[英]POST HTTP request to login with username and password with Java script and c++
我一直在用C++
開發一個應用程序,有些部分需要連接到 http 服務器,我設法發送GET和HEAD請求並檢索網頁。
目前,我正在嘗試向需要登錄信息的網站發送POST請求表單,它類似於GET請求,但是,我不知道如何編寫它。
讓我們說:
POST /users/login HTTP/1.1
HOST: www.example.com
Content-Length: 50,
username: ME
password: pass
然后接收身份驗證以檢索登錄所需的頁面,
我該如何寫我的POST請求!?
該網站使用表單身份驗證。 我的意思是有一個框可以輸入電子郵件地址和密碼,然后點擊提交。 據我所知,它是用JS編寫的。
任何幫助或方向表示贊賞。
嘗試將您的請求重寫為:
POST /users/login HTTP/1.1
HOST: www.example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 25
username=ME&password=pass
我認為“25”是正確的長度。
作為練習,您可以下載允許調試的 HTTP 工具,例如 WireShark,然后登錄到沒有安全登錄系統的通用論壇,例如通常用於 phpbb 論壇的系統。
POST 是 GET、HEAD 等 HTTP 方法之一,關於 HTTP 本身的基礎知識很少。 它是一個基於文本的協議(您可以使用像 putty 這樣的 telnet 客戶端連接到服務器的端口 80,然后手動鍵入整個請求)。
第一行包含方法(GET、HEAD、POST 等)、URL 路徑和您支持的 HTTP 協議版本。 我建議使用 HTTP1.0,因為您不會在同一個連接中發送多個請求。 這更難實施。
下一組行稱為標題,每行包含一個鍵(內容類型、內容長度、主機等)和一個由“:”分隔的值。
然后發送的是請求的正文。 信息必須經過 urlencoded。 通讀http://www.w3schools.com/tags/ref_urlencode.asp
現在來解決您的問題,如果您已經知道如何執行 GET,那么假設 POST 需要以下步驟。
內容類型:應用程序/x-www-form-urlencoded 內容長度:
希望這可以幫助。 如果您想了解更多信息,請閱讀http://www.w3.org/Protocols/HTTP/1.0/draft-ietf-http-spec.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.