小编Ale*_*ock的帖子

CORS与Symfony,jQuery,FOSRestBundle和NelmioCorsBundle

⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️TL
; DR:编辑(在阅读整篇文章之前):

这个问题解决了,因为我在我的代码中犯了一个非常愚蠢的错误,与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)

ajax jquery cors symfony fosrestbundle

20
推荐指数
1
解决办法
8220
查看次数

标签 统计

ajax ×1

cors ×1

fosrestbundle ×1

jquery ×1

symfony ×1