国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

OPTIONS跨域問題

abinx

問題描述

瀏覽器跨域會(huì)發(fā)生兩個(gè)請(qǐng)求 一個(gè)OPTIONS預(yù)請(qǐng)求 如果設(shè)置的只有post路由 路由里面找不到OPTIONS路由就會(huì)直接返回404 或者回退到Route::fallback() 不會(huì)調(diào)用跨域中間件 造成跨域失敗
截圖

截圖

為此你搜索到了哪些方案及不適用的原因

經(jīng)實(shí)驗(yàn):設(shè)置any路由能正??缬?我路由都是根據(jù)不同的method實(shí)現(xiàn)不同的功能 沒辦法都用any路由 這個(gè)怎么處理???

2634 2 2
2個(gè)回答

keytehu

http://www.wtbis.cn/doc/webman/middleware.html#%E7%A4%BA%E4%BE%8B%EF%BC%9A%E8%B7%A8%E5%9F%9F%E8%AF%B7%E6%B1%82%E4%B8%AD%E9%97%B4%E4%BB%B6

文檔寫了
跨域可能會(huì)產(chǎn)生OPTIONS請(qǐng)求,我們不想OPTIONS請(qǐng)求進(jìn)入到控制器,所以我們?yōu)镺PTIONS請(qǐng)求直接返回了一個(gè)空的響應(yīng)(response(''))實(shí)現(xiàn)請(qǐng)求攔截。
如果你的接口需要設(shè)置路由,請(qǐng)使用Route::any(..) 或者 Route::add(['POST', 'OPTIONS'], ..)設(shè)置。

  • abinx 2023-02-13

    已解決 加一行就行了 Route::options('[{path: .+}]', fn() => response('', 204));

markHxz

是不是配置了fallback
fallback不走中間件
你可以在fallback里面配置跨域返回

Route::fallback(function (Request $request) {
    $response = strtoupper($request->method()) === 'OPTIONS' ? response('', 204) : response('', 404);
    $response->withHeaders([
        'Access-Control-Allow-Credentials' => 'true',
        'Access-Control-Allow-Origin' => "*",
        'Access-Control-Allow-Methods' => '*',
        'Access-Control-Allow-Headers' => '*',
    ]);
    return $response;
});
年代過于久遠(yuǎn),無法發(fā)表回答
??