jQuery-发送跨域放置/删除请求
我有两个子域:main.example.com和api.example.com 两者都坐在同一台机器上 我正试图从main.example.com向api.example.com发送PUT/DELETE请求,但它不允许我这样做 响应标题,来自api.example.com:jQuery-发送跨域放置/删除请求,jquery,ajax,rest,http,cors,Jquery,Ajax,Rest,Http,Cors,我有两个子域:main.example.com和api.example.com 两者都坐在同一台机器上 我正试图从main.example.com向api.example.com发送PUT/DELETE请求,但它不允许我这样做 响应标题,来自api.example.com: Access-Control-Allow-Origin: http://main.example.com Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIO
Access-Control-Allow-Origin: http://main.example.com
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
以下是提出请求的方式:
$.ajax({
url: 'https://api.example.com/script.cgi',
type: 'PUT',
success: function(result) {
// Do something with the result
}
});
这给我带来了一个错误:
跨源请求被阻止:同一源策略不允许读取位于的远程资源。这可以通过将资源移动到同一域或启用CORS来解决。
我怎样才能解决这个问题?我浪费了一整天试图修好它,但没有成功
p.S.在chrome和firefox中不起作用。请确保在飞行前(选项)响应中添加CORS标题,在PUT响应中添加
我测试了您的设置(仅
访问控制允许来源
和访问控制允许方法
),只要这两个响应具有CORS头,一切都会正常工作(例如,如果我从PUT响应中删除它们,我会收到您的错误).尝试添加访问控制允许标头
标头以及我必须添加的确切标头?尝试来源
,内容类型
,接受
,x-request-with