使用Go 建構的Web 伺服器向特定URL 發送POST 請求時,使用者可能會遇到意外重定向到GET 請求的情況。當註冊的處理程序路徑和請求的 URL 之間存在差異並導致重定向時,通常會出現此問題。
Go 中 http 套件的預設實作強制執行某些規則: URL 尾部斜線。如果使用者為具有尾部斜線 / 的路徑註冊處理程序,但將瀏覽器定向到不帶尾部斜杠的 URL,則伺服器會自動發送 301 重定向回應。這可以確保瀏覽器遵循正確的 URL 格式並符合註冊的處理程序。
要解決此問題,開發人員可以採用多種策略:
需要注意的是,當發生重定向時,瀏覽器不會重複POST 資料。這是因為瀏覽器無法確定使用者是否打算將相同的敏感資料傳送到新的 URL。因此,使用者在提交 POST 請求時應確保使用正確的 URL。
以上是為什麼我的 Go Web 伺服器會將 POST 請求重新導向到 GET 請求?的詳細內容。更多資訊請關注PHP中文網其他相關文章!