CORS头“访问控制允许来源”不会对Ajax请求

问题描述:

但同样的错误到浏览器匹配“(空)”CORS头“访问控制允许来源”不会对Ajax请求

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://abc-test123.com/login. (Reason: CORS header ‘Access-Control-Allow-Origin’ does not match ‘(null)’).

我的浏览器支持一个Cors

我有Chromeextenstion of CorsCorsE ad-ons for Firefox

所有API的工作PERF ectly来自同一个域到我的本地服务器,但我们的项目的API的一个不工作了

我们正在超薄框架在这里工作是PHP文件代码

$corsOptions = array(
    "origin" => "*", 
    "exposeHeaders" => array("X-My-Custom-Header", "X-Another-Custom-Header"), 
    "maxAge" => 1728000, 
    "allowCredentials" => True, 
    "allowMethods" => array(" PUT, GET, POST, DELETE, OPTIONS"), 
    "allowHeaders" => array("X-PINGOTHER") 
); 
$cors = new \CorsSlim\CorsSlim($corsOptions);   
$app->add($cors); 

我打电话AJAX功能(这是之前的工作)

var dataString = { 
     username: "test", 
     password: "test123" 
    } 
    $.ajax({ 
     method: "POST", 
     url: varURI, //My url variable 
     data: dataString, 
     crossDomain: true, 
     success: function(data) 
     { 
      if(data.status == "success") 
      { 
       alert("Success"); 
      } 
      else 
      { 
       alert("Failure"); 
      } 
     } 
    }); 

我已经API错误后试图下面的新事物

//(1) 
$.support.cors = true; 

//(2) 
$.ajax({ 
    method: "POST", 
    url: varURI, //My url variable 
    data: dataString, 
    dataType: "jsonp", 
    async: false, //and true too 
    crossDomain: true, 
    success: function(data) 
    {} 
}); 

但是同样的错误...

我已经检查了很多问题,然后在询问问题后应用了所有的问题。所以需要帮助或任何需要的信息,我在这里失踪。在你的.htaccess

添加以下代码

<ifModule mod_headers.c> 
    Header set Access-Control-Allow-Origin: * 
</ifModule> 

而且也期待在回答这个链接 http://enable-cors.org/server_apache.html

+0

你知道,如果我其他的API是从这个域名,但对于这个特定子域的API是工作不工作,那么我需要更新.htaccess文件? –

+0

什么是当前.htaccess文件头? – Elby

+0

检查服务器上的* .conf文件,例如httpd.conf或apache.conf。那里的'标题'是什么?或者任何东西特别提到任何带有标题的URL?它应该是标题设置Access-Control-Allow-Origin“*” – Elby