問題內容
如您所知,cors 標準包括最初發送options 請求來檢查有效性,我決定在處理程序中釋放對options 請求的處理,但是出現了返回布林值,並且僅處理options 請求的問題,並跳過runon 中的其餘部分,也許您知道處理cors 幫助程式請求的其他方法?
public void run() { HttpServer.create() .host(this.config.getHost()) .port(this.config.getPort()) .runOn(eventLoopGroup.newEventLoopGroup()) .protocol(HttpProtocol.HTTP11) .handle((request, response) -> { if (request.method().equals(HttpMethod.OPTIONS)) return response .header("Access-Control-Allow-Origin", "*") .header("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE") .header("Access-Control-Allow-Headers", "Content-Type, Authorization") .sendHeaders(); else ??????? }) .route(this.provider::run) .bindUntilJavaShutdown(Duration.ofSeconds(30), this::onStart); }
正確答案
如果有人突然需要
private @notnull corsconfig getcorsconfig() { return corsconfigbuilder.foranyorigin() .allownullorigin() .allowcredentials() .allowedrequestmethods(httpmethod.get, httpmethod.post, httpmethod.delete, httpmethod.put, httpmethod.patch) .allowedrequestheaders("content-type", "authorization") .build(); } public void run() { httpserver.create() .host(this.config.gethost()) .port(this.config.getport()) .protocol(httpprotocol.http11) .doonconnection(this::handler) .route(this.provider::run) .binduntiljavashutdown(duration.ofseconds(30), this::onstart); } private void addhandler() { this.connection.addhandlerlast(new corshandler(getcorsconfig())); }
嘗試像這樣替換 handle()
來建立 http 伺服器應該可以解決您的問題:
public void run() throws IOException { CorsConfig corsConfig = CorsConfigBuilder.forAnyOrigin().disable().build(); HttpServer.create() .host(this.config.getHost()) .port(this.config.getPort()) .runOn(eventLoopGroup.newEventLoopGroup()) .protocol(HttpProtocol.HTTP11) .handle(corsConfig) .route(this.provider::run) .bindUntilJavaShutdown(Duration.ofSeconds(30), this::onStart); }
查看此配置的更多詳細資訊:https://www.php.cn/link/e2a23af417a2344fe3a23e652924091f
#以上是如何在Reactor Netty實現CORS?的詳細內容。更多資訊請關注PHP中文網其他相關文章!
陳述
本文轉載於:stackoverflow。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
1 個月前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前ByDDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前ByDDD

熱工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

Dreamweaver Mac版
視覺化網頁開發工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

記事本++7.3.1
好用且免費的程式碼編輯器