在我的电脑上进行本地测试:
index.hml
<!DOCTYPE html>
<html>
<head>
<!--script src="angular.js"></script-->
<script src="i18next.js"></script>
<script src="app.js"></script>
</head>
<body>
</body>
</html>
app.js
i18n.init();
错误@ i18next.js中的第672行
xhr.send(payload);
NS_ERROR_DOM_BAD_URI:访问受限制的URI被拒绝
答案 0 :(得分:1)
您遇到了同源政策问题(请参阅http://en.wikipedia.org/wiki/Same-origin_policy)。这意味着您发送请求TO的URI与发送请求FROM的URL之间的端口,域或协议不同。
您可以通过向服务器端代码添加标头来解决此问题:
Access-Control-Request-Headers
Access-Control-Request-Method
请参阅: https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS
答案 1 :(得分:0)
我已经解决了我的项目中的 NS_ERROR_DOM_BAD_URI 错误(使用 ReactJS - 通过 axios 处理 API)但我认为我的解释一个解决方案可以帮助您:
FE 代码:
headers: {
'Access-Control-Allow-Origin': '*',
'Content-Type': 'application/json'
}
BE 代码(Spring Boot):
allowedHeaders("userLoginToken", "Content-Type")
因为我只允许在标头中使用“Content-Type”,但我的标头具有冗余配置“Access-Control-Allow-Origin”,而我的 BE 不允许这样做。
我是如何解决的: 仅删除请求标头中的“Access-Control-Allow-Origin”,错误消失。
标题:{ '内容类型':'应用程序/json' }