CORS问题不一致

时间:2013-08-20 08:20:31

标签: javascript ajax coffeescript cors

好的,我正在使用REST控制台(Chrome扩展程序)来测试其余的API。这些请求与REST控制台一起使用,但在javascript AJAX中执行相同的操作时失败了 原点localhost:8000不允许使用Access-Control-Allow-Origin。

服务器设置为允许*,我可以在REST控制台的响应标头中看到这一点。但是在javascript中执行ajax请求时查看我的响应Headers,我看到那些标题不存在。

两者有什么区别?

这是我简单的AJAX请求(coffeescript)

$.ajax
    type: requestType
    contentType: "application/json"
    url: url
    data: data_string
    success: (r) =>
        successCallback(r)
    error: (r) =>
        errorCallback(r)

这适用于本地网络中的办公室,现在在VPN上没有。但REST控制台始终有效吗?

1 个答案:

答案 0 :(得分:3)

在一个简单的CORS请求中,application/json不允许

Content-Type:

它必须是预检的,服务器端的设置有点复杂。

尝试取消设置contentType或使用以下其中一项:

  • application / x-www-form-urlencoded
  • multipart / form-data
  • 文本/纯

另见my previous answer here

和相关问题:

jQuery CORS Content-type OPTIONS