42 Star 445 Fork 93

Thans / jwt-auth

 / 详情

JWTAuthAndRefresh 对 options 请求操作有误

已关闭
创建于  
2021-10-27 11:31

应该是

// OPTIONS请求直接返回
if ($request->isOptions()) {
    return $next($request); // 不是 response();
}

评论 (4)

刘海涛 创建了任务
刘海涛 修改了描述
刘海涛 修改了描述
展开全部操作日志

OPTIONS 请求是预请求,直接返回空内容即可,return $next($request);的话会导致重复请求。

路由定义里会设置不同的谓词,这样TP框架应该就不会重复执行了
如果直接返回 response(); 我这的现象是 后续的中间件未执行,比如 AllowCrossDomain.php
我的 TP 版本是 v6.0.9

建议把AllowCrossDomain中间件往前放,放到第一行。

<?php
// 全局中间件定义文件
return [
    \think\middleware\AllowCrossDomain::class,
    \thans\jwt\middleware\JWTAuthAndRefresh::class,
    // 全局请求缓存
    // \think\middleware\CheckRequestCache::class,
    // 多语言加载
    // \think\middleware\LoadLangPack::class,
    // Session初始化
    // \think\middleware\SessionInit::class
];

OPTIONS 请求我是直接通过nginx返回204

Thans 任务状态待办的 修改为已取消

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(3)
391133 qeq66 1578922398 146486 linjialiang 1578919498
PHP
1
https://gitee.com/thans/jwt-auth.git
git@gitee.com:thans/jwt-auth.git
thans
jwt-auth
jwt-auth

搜索帮助