Zend Framework 2 - 如何允许杀死CORS策略:没有'Access-Control-Allow-Origin'
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zend Framework 2 - 如何允许杀死CORS策略:没有'Access-Control-Allow-Origin'相关的知识,希望对你有一定的参考价值。
我申请了以下但谷歌浏览器不断显示我的错误。
已被CORS策略阻止:请求的资源上没有“Access-Control-Allow-Origin”标头。因此不允许原点'null'访问。
public function checkAction() {
// responsible to send back JSON object
header('Access-Control-Allow-Origin: *');
$response = $this->getResponse();
//$response->setHeader('Access-Control-Allow-Origin', '*');
$json = array(
'result' => 'ok',
'module' => 'ajax',
'data' => 'test'
);
$response->setContent(Json::encode($json));
return $response;
exit;
}
注意:前端:www.javascript.com使用ajax进入后端:www.backend-zendframework.com/rr/check
答案
作品。
只有在httpd.conf中添加以下行才能工作。
Header always set Access-Control-Allow-Headers "*"
Header always set Access-Control-Allow-Origin "https://www.stackoverflow.com"
Header always set Access-Control-Allow-Credentials "true"
永远不会使用以下ZF2的愚蠢行:
$response->getHeaders()->addHeaderLine('Access-Control-Allow-Origin', 'https://www.stackoverflow.com');
$response->getHeaders()->addHeaderLine('Access-Control-Allow-Credentials', 'true');
$response->getHeaders()->addHeaderLine('Access-Control-Allow-Methods', 'POST PUT DELETE GET');
$response->setStatusCode(200);
以上是关于Zend Framework 2 - 如何允许杀死CORS策略:没有'Access-Control-Allow-Origin'的主要内容,如果未能解决你的问题,请参考以下文章
Zend Framework 1.11:如何自动加载使用命名空间的类
如何模拟 Zend\Form 提交而不在 Zend Framework 2/3 中显示表单?
如何安装zend framework 2.4.11骨架应用程序
如何模拟Zend Form提交而不在Zend Framework 2/3中显示表单?