微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – $.ajax vs $.post:获取允许来源错误

使用这个做ajax很好:

$.post("http://localhost:3000/scrape",
            {
                data: json
            },
            function(data, status){
            });

但这不是?

$.ajax({
              type: 'POST',
              url: 'http://localhost:3000/scrape',
              data: json,
              contentType: "application/json",
              success: function(data,status){

              },
              async:false
            });

使用$.ajax我得到了错误
XMLHttpRequest无法加载http://localhost:3000/scrape.对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头.

我以为他们俩都一样吗?这有什么问题?

解决方法:

在第一个示例中,您正在使用application / x-www-form-urlencoded数据进行简单请求.

在第二个示例中,您指定的内容类型不是简单请求允许的内容类型之一,因此您将触发preflighted request.

服务器正在愉快地响应POST请求,但不响应预检OPTIONS请求.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐