![](/img/trans.png)
[英]How can I send a file to mail in html form using http request in nodejs server code?
[英]How to send data in the HTTP request body when using an HTML form?
HTTP規范說POST請求可以包含任意數據體。
HTML form
元素可以POST到URL並且可以包含input
元素,但這些input
元素將變為查詢字符串。
我如何獲得一個form
以便在按下提交按鈕時發送的HTTP POST請求正文中的數據?
HTTP規范說POST請求可以包含任意數據體。
那是對的。 然而,該數據的格式又有幾種規格。 對於HTML表單,最常用的是application/x-www-form-urlencoded
,后跟multipart/form-data
。 您可以通過HTML <form>
元素的enctype
屬性進行設置。 另請參見第17.13.4節HTML規范的表單內容類型 。
HTML表單元素可以POST到URL並且可以包含輸入元素,但這些輸入元素將變為查詢字符串。
這確實是application/x-www-form-urlencoded
工作方式。 請注意,此查詢字符串實際上代表整個HTTP請求正文! 因此,您似乎認為請求正文絕對不是空的。
我如何獲得一個表單,以便在按下提交按鈕時發送的HTTP POST請求正文中的數據?
因此它實際上已經這樣做了。 如果您打算發送表單本身的HTML DOM樹表示的副本,如前面的語句中稍微暗示的那樣,那么您可以通過JavaScript的一點幫助實現以下目的:
<form onsubmit="this.source.value=this.outerHTML">
...
<input type="hidden" name="source" />
<input type="submit" />
</form>
然后,表單的整個HTML DOM樹表示形式為字符串格式,可用作名稱source
請求參數。
按下按鈕時使用javascript發送ajax請求並取消表單提交。 表單提交將始終是名稱/值對。 XForms可以發送自定義數據,但如果這是供公眾使用的話,那么在使用的大多數瀏覽器支持XForms之前還需要幾年時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.