使用cURL傳遞發佈數據需要輸入的名稱。但是,我想知道如果輸入沒有分配名稱,你怎麼能做到這一點?您如何過去沒有輸入名稱值的發佈數據?
curl -d "user=foobar&pass=12345&id=blablabla&ding=submit" http://www.formpost.com/getthis/post.cgi
使用cURL傳遞發佈數據需要輸入的名稱。但是,我想知道如果輸入沒有分配名稱,你怎麼能做到這一點?您如何過去沒有輸入名稱值的發佈數據?
curl -d "user=foobar&pass=12345&id=blablabla&ding=submit" http://www.formpost.com/getthis/post.cgi
有一個選項CURLOPT_POSTFIELDS
。它允許您將POST數據設置爲關聯數組或字符串。所以,你需要使用後者的選項。
你不知道。 GET查詢和POST數據都以name=value
的形式出現。唯一的例外是,如果您將表單的提交編碼更改爲enctype="multipart/form-data"
,因爲您有文件上傳控制。
更多信息請參見http://www.cs.tut.fi/~jkorpela/forms/file.html#enctype:
HTML規範爲
enctype
定義了兩個可能的值:
enctype="application/x-www-form-urlencoded"
(缺省值)
這意味着一個簡單的編碼其中介紹了字段name=value
用「&」符號分隔的字符串(&
),並對字符使用一些特殊的「轉義」機制,例如%28
用於「(」characte r。如果人們試圖閱讀它,這會讓人感到困惑 - 它意味着被程序處理,而不是被人類直接讀取!
enctype="multipart/form-data"
這意味着,表單數據集進行編碼,使得每個表單域(更準確地,每個「控制」)以適合於該字段的格式呈現,並且所述數據集作爲一個整體是包含這些演示文稿作爲其組件的多部分消息。這對於「正常」形式是浪費的,但對於包含文件字段的表單來說,這是合適的,甚至是唯一可行的方式。多部分結構意味着每個文件在一個較大的包中都有一個很好的「包」,內部的「包」上有一個合適的「標籤」(內容類型信息)。這種類型最初是在RFC 1867中定義的,但它也有討論在RFC 2388中(請參閱RFC後面的註釋)。