繁体   English   中英

使用Ajax / Javascript / Django进行CORS请求

[英]CORS request with Ajax/Javascript/Django

我想让CORS收到Google的请求(仅举一个例子。我实际上正在访问一个返回json数据的网站)。 下面是我的ajax代码:

$.ajax({
    url: "https://www.google.com",
    type: "get",
    dataType: "json",
    crossDomain: true,
    success: function(data, textStatus) {
        alert ("success" + data);
    },
    error: function(data, textStatus) {
        alert ("fail" + data);
    }
})

有了上面的代码,我得到了这个错误:

XMLHttpRequest cannot load https://www.google.com/. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://sdlweb-dev:1234' is therefore not allowed access. The response had HTTP status code 405.

我尝试添加类似的代码

        headers: {
            "Access-Control-Allow-Origin": "*",
            "Access-Control-Allow-Headers": "X-Requested-With,content-type",
            "Access-Control-Allow-Credentials": true
        }

但仍然出现相同的错误。

我尝试将dataType从'json'更改为'jsonp'。 通过这种方式发送请求,但是由于响应不是jsonp,因此出现了另一个错误:

Uncaught SyntaxError: Unexpected token <

在不修改服务器端的情况下(我是指将get请求发送到的url,因为我没有访问权限),可以发送CORS请求吗?

任何帮助表示赞赏!!!

谢谢,

i

必须有权访问服务器代码才能允许CORS请求。

您显示的标头应该是在响应中发回的标头,而不是在请求中发回的标头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM