Safari无法加载本地js文件。报告跨域错误

问题描述 投票:0回答:1

我正在尝试在我的索引页面中导入本地js文件。它适用于Chrome和Firefox,但Safari显示错误消息。

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/[email protected]/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>

为什么导入在Safari中失败?

javascript safari
1个回答
0
投票

通过将crossorigin添加到我的导入中,Safari接受了[[相同来源资源。

<script src="/js/i18next.js" type="module" crossorigin></script>
不幸的是,Safari没有提供无缓存模式,这使我的测试更加麻烦。
© www.soinside.com 2019 - 2024. All rights reserved.