Safari 无法加载本地 js 文件.报告跨域错误 [英] Safari cannot load local js file. Reports cross-origin error
本文介绍了Safari 无法加载本地 js 文件.报告跨域错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在我的索引页中导入本地 js 文件.它适用于 Chrome 和 Firefox,但 Safari 显示错误消息.
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>
为什么在 Safari 中导入失败?
Why does the import fail in Safari?
推荐答案
通过将 crossorigin
添加到我的导入,Safari 接受了 same origin 资源.
By adding crossorigin
to my imports Safari accepted the same origin resource.
<script src="/js/i18next.js" type="module" crossorigin></script>
不幸的是,Safari 不提供无缓存模式,这使我的测试变得更加繁琐.
Unfortunately Safari does not provide a no-caching mode which made my testing a lot more cumber-stone.
这篇关于Safari 无法加载本地 js 文件.报告跨域错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文