Zend2跨域AJAX查询

时间:2014-04-15 02:21:08

标签: php jquery zend-framework2

关于Stack Exchange的第一个问题,如果我遗漏了任何内容,那就很抱歉。

我正在尝试对单个API URL进行JQuery AJAX调用,这是使用Zend2 Restful Controller实现的。

当我使用以下代码调用API时。由于我需要在服务器端处理请求的方式,我想在JSONP上使用JSON。

$.ajax({
    type: requestType,
    beforeSend: function (request)
    {
        //Add some headers;
    },
    url: requestURL,
    data: requestdata,
    contentType: "application/json",
    dataType: "json",
    success: function(data)
    {
        console.log('success');
        $.each(data.exchangeresponse, function(i, value) {
            console.log('Value of '+ i +' is : ' + value);
        });
    },

我已使用以下内容在Zend中设置控制器。

$response = $this->getResponse();
//$response->setStatusCode(200);
$response->getHeaders()
    //make can accessed by *   
    ->addHeaderLine('Access-Control-Allow-Origin','*')
    //set allow methods
    ->addHeaderLine('Access-Control-Allow-Methods','PUT, GET, POST, DELETE, OPTIONS')
    //set allow custome headers
    ->addHeaderLine('Access-Control-Allow-Headers','Authorization, X-Authorization, Origin, Accept, Content-Type, X-Requested-With, X-HTTP-Method-Override, Requester, Version, RequestTimeStamp');

return $response;

但是,当我拨打电话时,我仍然会收到以下错误。

XMLHttpRequest无法加载[Tagert URL]。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点[Origin URL]访问。

感谢您的帮助。

非常赞赏。 保罗

0 个答案:

没有答案