我用express.js我的服務器,這個標題:CORS與Express.js和jQuery.ajax
x-powered-by: Express
connection: keep-alive
content-length: 2
content-type: application/json; charset=utf-8
access-control-allow-methods: GET,PUT,POST,DELETE
access-control-allow-origin: *
access-control-allow-headers: x-requested-with
我打電話res.header
允許CORS:
res.header("Access-Control-Allow-Origin:", "*");
res.header("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE");
res.header("Access-Control-Allow-Headers", "x-requested-with");
你可以測試這裏:http://my-api.rs.af.cm/api/products
對於我的前端,我用jsbin和我打電話給我的服務器$.ajax
:http://jsbin.com/apizez/37/edit
結果在這裏:http://jsbin.com/apizez/37
你可以看一下JS的控制檯,你會看到這樣的錯誤:
XMLHttpRequest cannot load http://my-api.rs.af.cm/api/products. Origin http://jsbin.com is not allowed by Access-Control-Allow-Origin.
我讀了CORS所有其他的答案,我不希望使用easyXDM。
是所有路過這些頭回的請求?您是否支持預檢選項請求? – 2012-07-31 01:07:26
剛看,是的,Chrome正在做一個預檢OPTIONS請求,它沒有得到任何CORS頭文件。修復你會有這個舔。 – 2012-07-31 01:09:27
請參閱https://developer.mozilla.org/En/HTTP_access_control#Preflighted_requests – 2012-07-31 01:11:29