我有一個表格:URL的POST請求(JS)
<form>
<input id = "sendLink" type = "text" placeholder = "insert a link here">
</form>
然後我試圖發送數據(這是一個URL(字符串)就像http://sameURL.com):
xmlhttp.open('POST', 'http://host:8453/page.htm', true);
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send($link);
但在服務器端我收到一個 '分裂' 後身體:
"headers": {
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
...
more headers here
...
"User-Agent": "Mozilla/5.0"
},
"httpVersion": "1.1",
"method": "POST",
"post": {
"http://sameURL.com": ""
},
"postRaw": "http://sameURL.com",
"url": "/page.htm"
}
爲什麼我得到
「http://sameURL.com 」: 「http://sameURL.com」
「
在後機身,而不是」?謝謝。我需要無額外冒號和「」的請求。 我應該只使用「http://sameURL.com」字符串。
UPD 1
測試目的: $鏈接= 「https://google.com?q1=asdf?q2=ddd?q3=ppp」;
在這種情況下,我們得到:
"post": {
"https://google.com?q1": "asdf?q2=ddd?q3=ppp"
},
"postRaw": "https://google.com?q1=asdf?q2=ddd?q3=ppp",
你能提供'$ link'變量的動態初始化?我猜你發送的JSON只有一個鍵值和沒有值。因此,當你用PHP解碼時,訪問'arr ['http://sameURL.com']'會返回一個空字符串。 –
手動設置字符串的結果是:$ link =「https://google.com」;.在服務器上:「post」:{「https://google.com」:「」}, – sameuser
評論中該死的分析器添加了新字符並刪除了像h t t p一樣的符號。請查看相關的UPD1部分。 – sameuser