javascript - 如何解决 Access-Control-Allow-Origin 错误?

标签 javascript jquery json django heroku

我在 Django 中的 heroku.com 上设置了一个小型 Web 应用程序,它返回 JsonResponse 你可以看到它 here.

 {
 name: "shubham",
 college: "MAIT",
 subject: "java"
 }

我还在我的计算机上本地设置了服务器,该服务器接受该 JSON,并在我的 javascript 文件中附加了 HTML 元素:

    $(function (){
        $.ajax({
            type:'GET',
            url:'https://justgiveme.herokuapp.com/',
            dataType :"Json",
            contentType: "application/json; charset=utf-8",
            success: function(data) {
                alert("Success !");
            },
            error : function()
            {
                alert("failed !");
            }
        });
    });

但是当我打开 localhost 时,它给我 alert("failed !") 而不是 alert("success !"); 。 我检查了 Chrome 控制台,发现了此错误:

enter image description here

任何有用的建议都是值得赞赏的。

最佳答案

您需要在heroku应用程序上启用跨源资源共享(CORS)。现在它失败了,因为请求不是来自检索第一个资源的域。在你的情况下,127.0.0.1。

这是 Django 在 CORS 上的起点:http://www.django-rest-framework.org/topics/ajax-csrf-cors/

关于javascript - 如何解决 Access-Control-Allow-Origin 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37930284/

相关文章:

javascript - 遍历复杂的嵌套 json 数组 javascript

javascript - AngularJS 资源更新时不使用 ID

javascript - 使用 jQuery 从 HTML 创建 JSON 对象

javascript - event.stopPropagation() 不起作用

javascript - 如何在 Angular Controller 中检索从 Node 服务器发送的 ejs 数据?

jquery - 需要帮助使用 load() 将灯箱表单数据加载到 html 页面

jQuery .get > 将 div 添加到页面

javascript - 使用 Webpack 和 React 创建一个 2 页网站( index.html 和 another.html )

javascript - 从 <div> 中删除文本

javascript - Jquery $.ajax 没有在 ASP.NET MVC 中发布数据字符串