dpl3350 2016-03-02 05:10
浏览 153
已采纳

使用nginx的Slim php框架,启用了CORS,请求状态为200但响应数据未到来

I am using slim php framework using nginx , i have enabled CORS also . Now when i make a request to my Rest API from some other domain, the option method is invoked first , then post method is invoked with actual post data. Response for POST is 200 but there is no data coming from API .

But when i try the same with same domain , everything works perfect.

WORKING

$.ajax({
    url: "http://172.19.4.130/oam_restapi/restapi/loginpost",
    type: 'post',
    dataType: 'json',
    contentType: "application/json; charset=utf-8",
    crossDomain:true,
    data : JSON.stringify({
            "username" : "admin",
            "password" : "admin!23B",
            "domain" : "local"
            }),
    success: function(res) {
    console.log(res);


    }

});

when this ajax call is made like 172.19.4.130/makeajax.html

Not working

When this same call is made like localhost/makeajax.html

I understand CORS , and the same was working with APACHE earlier

Nginx Configuration

location /oam_restapi/restapi/ { 
    satisfy any;
    add_header Access-Control-Allow-Origin *;
    root /html/oam_restapi/restapi/; 
    index index.php; 
    try_files $uri /oam_restapi/restapi/index.php; 
}

展开全部

  • 写回答

1条回答 默认 最新

  • douyi8408 2016-03-02 05:13
    关注

    You need to have the Access-Control-Allow-Origin header in the response from the backend.

    Have a look at https://github.com/palanik/CorsSlim

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部