0
リクエストハンドラでは、 GET
https://example.com/collections/1またはPOST http://0.0.0.0:8080/collections
サーバーアドレスhttps://example.comとhttp://0.0.0.0:8080はどうすれば入手できますか?ハンドラ内のリクエストからサーバアドレスを取得することが完全で迅速です。
リクエストハンドラでは、 GET
https://example.com/collections/1またはPOST http://0.0.0.0:8080/collections
サーバーアドレスhttps://example.comとhttp://0.0.0.0:8080はどうすれば入手できますか?ハンドラ内のリクエストからサーバアドレスを取得することが完全で迅速です。
私がいることを発見した...
let httpPrefix = isLinux ? "https://" : "http://"
しかし、より良い方法がありますようにそれは感じている:
現在、私はhttpPrefix
があるので
var url = "\(httpPrefix)\(server.serverAddress)"
if server.serverPort != 443 { url += ":\(server.serverPort)" }
のようにそれを構築していますhost
ヘッダーには、サーバーによってはexample.com
または0.0.0.0:8080
のいずれかが含まれます。
次のようにすれば、必要な結果が得られます。 httpScheme
はまだハードコードされています(これは私が気に入らないものですが、まだ他のオプションは表示されていません)。
httpScheme + request.header(.host)!
私は強制的にアンラッピングしています。私はホストヘッダーが常に存在することを観察しています。