後台
使用Fetch API 發送表單資料時,經常會遇到與編碼資料時使用的內容類型和邊界相關的問題。本文探討了這些問題的本質,並提供了編碼 multipart/form-data 與 application/x-www-form-urlencoded 的解決方案。
FormData 和 multipart/form-data
如 MDN 的 FormData 文件中所提到的,FormData 以 multipart/form-data 格式隱含編碼資料。此格式不適合傳送 Content-Type 為 application/x-www-form-urlencoded 的資料。
application/x-www-form-urlencoded 的解決方案
要將資料編碼為application/x-www-form-urlencoded 格式,您有兩種選擇:
URLSearchParams 的替代方案
如果有實驗支持,您也可以將 FormData 物件直接傳遞給 URLSearchParams,而不是手動附加值。此方法仍在開發中,應在實施前進行徹底測試。
結論
透過了解FormData 的機制和Fetch API 的行為,開發人員可以發送表單資料正確地採用multipart/form-data 或application/x-www -form-urlencoded 格式,確保伺服器端正確的資料傳輸和處理。
以上是如何使用 Fetch API 發送表單資料:Multipart/form-data 與 Application/x-www-form-urlencoded?的詳細內容。更多資訊請關注PHP中文網其他相關文章!