如何在 Yii2 中允许 CORS?
How to allow CORS in Yii2?
我有一个 JavaScript 前端向我的 PHP 后端请求纯文本。
除了因为我有 CORS 问题,它几乎可以正常工作。如何在我的 PHP 代码中允许 CORS?
我的前端(JavaScript 和 jQuery):
$.ajax({
type: 'GET',
url: 'http://localhost:8080/',
})
.done(function(data) {
console.log(data);
})
.fail(function() {
alert("Oh, no. CORS error again.");
});
我的后端(PHP 和 Yii2):
$result = file_get_contents('http://m2m.exemys.com/...'); // This URL is a bit larger with more parameters.
var_dump($result); // Plain text. Just some characters.
Yii2支持CORS处理,如official documentation.
上所写
public function behaviors()
{
return [
'corsFilter' => [
'class' => \yii\filters\Cors::class,
],
];
}
或者,您可以尝试在 PHP 后端添加以下 headers:
<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: *');
检查这个。 Yii2 带有开箱即用的 cors 过滤器。阅读文档以了解用法:https://www.yiiframework.com/doc/api/2.0/yii-filters-cors
我有一个 JavaScript 前端向我的 PHP 后端请求纯文本。
除了因为我有 CORS 问题,它几乎可以正常工作。如何在我的 PHP 代码中允许 CORS?
我的前端(JavaScript 和 jQuery):
$.ajax({
type: 'GET',
url: 'http://localhost:8080/',
})
.done(function(data) {
console.log(data);
})
.fail(function() {
alert("Oh, no. CORS error again.");
});
我的后端(PHP 和 Yii2):
$result = file_get_contents('http://m2m.exemys.com/...'); // This URL is a bit larger with more parameters.
var_dump($result); // Plain text. Just some characters.
Yii2支持CORS处理,如official documentation.
上所写public function behaviors()
{
return [
'corsFilter' => [
'class' => \yii\filters\Cors::class,
],
];
}
或者,您可以尝试在 PHP 后端添加以下 headers:
<?php
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: *');
检查这个。 Yii2 带有开箱即用的 cors 过滤器。阅读文档以了解用法:https://www.yiiframework.com/doc/api/2.0/yii-filters-cors