Safari cannot load local js file. Reports cross-origin error

谁说胖子不能爱 提交于 2020-05-16 10:59:29

问题


I am trying to import a local js file in my index page. It works in Chrome and Firefox, but Safari is showing an error message.

Blocked https://example.com/js/i18next.js from asking for credentials because it is a cross-origin request.
https://example.com/js/i18next.js

index.php

<?php include "global-php-scripts.php"; ?>
<!DOCTYPE html>
<html lang="<?=$htmlLang?>">
<head>
  <title>mySite</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta charset="UTF-8" />
  <meta name="keywords" />
  <?php include "js-imports.php"; ?>
  <!-- localization-->
  <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/i18next-xhr-backend/3.2.2/i18nextXHRBackend.min.js"></script> -->
  <script src="https://cdnjs.cloudflare.com/ajax/libs/i18next-locize-backend/2.2.2/i18nextLocizeBackend.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/i18next/2.0.22/i18next.min.js"></script>
  <!-- <script src="https://cdnjs.cloudflare.com/ajax/libs/i18next-browser-languagedetector/4.0.1/i18nextBrowserLanguageDetector.min.js"></script> -->
  <script src="https://unpkg.com/i18next-browser-languagedetector/i18nextBrowserLanguageDetector.js"></script>


  <script src="https://cdn.jsdelivr.net/npm/loc-i18next@0.1.4/loc-i18next.min.js"></script>

  <! -- THIS FAILS!!! -->
  <script src="/js/i18next.js" type="module"></script>
  <! -- /THIS FAILS!!! -->

  <!-- end localization -->
  <link rel="stylesheet" href="css/style.css" type="text/css" media="all" />

  <link href="https://fonts.googleapis.com/css?family=Montserrat:300,400,600|Roboto:700&display=swap" rel="stylesheet">
</head>

Why does the import fail in Safari?


回答1:


By adding crossorigin to my imports Safari accepted the same origin resource.

<script src="/js/i18next.js" type="module" crossorigin></script>

Unfortunately Safari does not provide a no-caching mode which made my testing a lot more cumber-stone.



来源:https://stackoverflow.com/questions/60465083/safari-cannot-load-local-js-file-reports-cross-origin-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!