目前我試圖發送一個發佈請求到我有一個服務器,它被配置爲只接受JSON數據。如何從HTML表單提交JSON編碼的發佈請求?
不幸的是,當我通過瀏覽器的開發者控制檯檢查發佈的請求時,它發送的數據不是編碼爲JSON,而是作爲編碼的url,因此響應類型爲415,這是由於預期類型和提供的數據。
形式:
<form action='http://myhost.elasticbeanstalk.com/API/Beta/Register' method = 'post' enctype='application/json'>
Email: *<br>
<input type='text' name='Email' style='width: 500px;' value='{"Email":"[email protected]"}'><br>
<br>
(Fields denoted with * are mandatory)
<br>
<input type='submit' value='Apply' style='float: right;'>
</form>
正如你所看到的,我在理論上應發送內容類型的JSON的請求,但是如果您檢查被髮送的請求時,你看到的內容類型仍然是一個編碼的url,但標籤「enctype ='application/json'」應該解決這個問題,除非我錯了。
(imgur目前下跌了,像往常一樣,所以我將這個形象換一個更永久鏈接時可能)
https://puu.sh/unXtf/2610742d2f.png
我缺少的東西?
'{「電子郵件」:「[email protected]」}'應該僅僅是'@測試gmail.com' – mehulmpt
這不是問題,目前,因爲這個問題是它不會被編碼爲json。如果您將其更改爲原始文本而不是json格式的字符串,則仍然是url編碼,這是一個問題。一旦解決了這個問題,我顯然需要稍微改變它,但由於服務器期待json並且它正在接收url編碼數據,所以這是導致415錯誤的原因。 – Potatosaurus