Comments (4)
处理跨域自己写个 Middleware 就可以了。
<?php
declare(strict_types=1);
namespace App\Middleware;
use App\Kernel\Http\Response;
use Hyperf\Utils\Context;
use Psr\Container\ContainerInterface;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;
class CorsMiddleware implements MiddlewareInterface
{
/**
* @var ContainerInterface
*/
protected $container;
public function __construct(ContainerInterface $container)
{
$this->container = $container;
}
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
{
$response = $this->container->get(Response::class)->response()->withHeader('Access-Control-Allow-Origin', '*')
->withHeader('Access-Control-Allow-Credentials', 'true')
->withHeader('Access-Control-Allow-Headers', '*');
Context::set(ResponseInterface::class, $response);
if ($request->getMethod() == 'OPTIONS') {
return $response;
}
return $handler->handle($request);
}
}
from hyperf.
如果js提交请求的时候有withCredentials:true 的话,简单粗暴地返回 Access-Control-Allow-Origin: * 是行不通的。
from hyperf.
所以这个还需要你们自己改改。
from hyperf.
from hyperf.
Related Issues (20)
- [BUG] 将SWOOLE的enable_delay_receive设置为true时,不会触发onConnect事件。 HOT 1
- 使用jsonrpc-http报错 HOT 1
- [QUESTION] 注解路由无法支持多个 HOT 1
- [BUG] Hyperf\DbConnection\Db blocks other coroutines from getting a database pool connection HOT 6
- [BUG] hyperf/testing 库 使用 $this->client->file() 方法上传文件测试存在问题 HOT 2
- [FEATURE] 可以在文档中增加一个很简单多租户(单表标识版)的demo
- [QUESTION] 自定义进程,是不是需要手动编写 调用链追踪 HOT 1
- [BUG] hyperf/swow 引擎下,ResponseInterface 的write 方法,无法按预期分块响应
- [QUESTION] 能不能在 crontab 中加一个事件 HOT 18
- 不用 new(),用注解 依赖注入时,初始化参数怎样写呢 HOT 1
- [BUG] Crontab执行时间与预期时间不符合 HOT 6
- [BUG] The console keeps reporting “Notice: Hyperf\Database\Connection::setPdo(): Send of 5 bytes failed with errno=32 Broken pipe in /web/vendor/hyperf/database/src/Connection.php on line 677” HOT 6
- 有没restapi方式的微服务?只想在网关做简单的服务注册、发现路由转发配置
- 官网ui优化建议😁:https://hyperf.io/官网的dom高度限制,导致文案‘y’没有显示完整 HOT 1
- Error while injecting dependencies into Hyperf\\Cache\\Driver\\RedisDriver: No entry or class found for 'Hyperf\\Utils\\Packer\\PhpSerializerPacker'
- [QUESTION] 项目开启crontab任务出现错误 HOT 10
- [QUESTION] Usage of parameter table-mapping and ignore-tables
- [BUG] trait里的__construct无法切面AOP
- [BUG] Coroutines deadlock when using hyperf/signal's WorkerStopHandler HOT 2
- 源码根目录,运行时会成一个0字节文件名为0的文件 ,怎么查找是那生成的?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hyperf.