Go開發伺服器中Host和Scheme為空
在Go中,利用開發伺服器處理HTTP請求時,常常會遇到http .Request.URL 的Host 和Scheme 屬性的問題空白。
原因:
直接存取開發伺服器(不使用HTTP 代理程式)時,通常會以相對格式發出請求:
在在這種情況下,Go HTTP 請求解析器會將URL 解釋為相對URL,導致Host 和Scheme為空properties.
存取HTTP 主機:
要從請求中擷取HTTP 主機,請造訪http.Request 結構體的Host 屬性,如以下程式碼所示:
確定URL類型:
要確定URL 是絕對還是相對,請利用URL 結構體的IsAbs() 方法:
Netcat 範例:
要測試行為,請使用以下內容建立HTTP請求文件內容:
並執行以下指令:
以上是為什麼Go的開發伺服器HTTP請求中Host和Scheme為空?的詳細內容。更多資訊請關注PHP中文網其他相關文章!