这个问题解决了,因为我在我的代码中犯了一个非常愚蠢的错误,与CORS或任何东西无关.
如果你想要阅读这个问题,请注意它有一个有效的CORS配置,如果你想要一个很好的例子.
(注意结束)
我有一个多域Symfony应用程序,后端部分由于某些原因使用Web服务而不是经典表单更新数据.
后端:back.mydomain.dev Webservices域:api.mydomain.dev
我使用jQuery对这些web服务进行AJAX调用,如果我想修改或创建对象,我也发送AJAX请求,对象与Doctrine实体合并并持久化.
我已经争取了整整一年的时间来制作GET,PUT,POST和DELETE请求,这些请求可以在这个应用程序上正常工作,并且因为它们位于不同的域中,我被迫在不同的环境中设置CORS.
所有jQuery AJAX请求如下所示:
ajaxObject = {
url: 'http://api.mydomain.dev/' + uri,
type: method, // Can be GET, PUT, POST or DELETE only
dataType: 'json',
xhrFields: {
withCredentials: true
},
crossDomain: true,
contentType: "application/json",
jsonp: false,
data: method === 'GET' ? data : JSON.stringify(data) // Here, "data" is ALWAYS containing a plain object. If empty, it equals to "{}"
};
// ... Add …Run Code Online (Sandbox Code Playgroud)