nginx,jquery - 在执行POST时获取Access-Control-Allow-Origin错误

时间:2012-04-27 18:29:03

标签: jquery json post nginx

这是我在Chrome控制台中看到的错误。

XMLHttpRequest无法加载{URL}。 Access-Control-Allow-Origin不允许原点{URL}。

我试过配置我的NGINX for CORS:

location / {
    if ($http_origin) {
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Methods "GET,POST,OPTIONS";
    }

但这似乎没有帮助。

jquery调用如下所示:

var submissionData = '{"tweet_id":"'+tweet_id+'", "question_id":"'+question_id+'", '+choiceString+', "extra_passback":"'+extra_passback+'"}';
$.post("http://ec2[...].amazonaws.com/question/answer/", submissionData, function(data) {console.log("success");});

我甚至不确定问题是jquery还是nginx。

1 个答案:

答案 0 :(得分:3)

基于this post,我添加了两个标题(除了您在上面的问题中提到的两个标题),它适用于我,使用JQuery json跨域请求:

add_header         Access-Control-Allow-Headers   Content-Type;
add_header         Access-Control-Max-Age         86400;