2013-10-12 69 views
0

我使用HttpWebRequest在服務器上上傳文件。但我也想發送一些參數(我的意思是名稱 - 值對)如何向多部分POST請求添加其他參數?

+0

如果我只是我的所有名稱 - 值對添加到URL?像這樣的東西:localhost:8080/fileuploader?a = b&c = d。它應該與POST一起工作嗎? –

+0

看看是否有幫助:http://msdn.microsoft.com/en-us/library/debx8sh9%28VS.80%29.aspx – Amar

回答

1

您可以將它們添加到查詢字符串中。無論HTTP方法是POST還是GET,它們都可以在服務器上使用。

+0

好的。但另一方面,當我發送一個文件到服務器時,在文章中有一個帶有分隔符的文件體。所以我可以將我的參數字符串添加到請求正文?我的意思是在文件正文之前或之後。我不確定POST機構在這種情況下應該是什麼樣子。 –

+0

看起來像你想從這個答案然後:http://stackoverflow.com/questions/566462/upload-files-with-httpwebrequest-multipart-form-data 這上傳的名稱/值集合作爲一個單獨的部分多部分POST請求。 –

+0

謝謝。似乎這正是我需要的。 –

0

你可以試試這個:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("some site"); 
request.Method = "POST"; 
request.ContentType = "application/x-www-form-urlencoded"; 
byte[] data = "some data"; 
request.ContentLength = data.Length; 
using (Stream stream = request.GetRequestStream()) 
{ 
    stream.Write(data, 0, data.Length); 
} 
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
+0

是的,但我想要的是發送文件和參數字符串。我應該先在流中寫什麼?如果「某些數據」是一對文件和參數字符串,您能否澄清如何處理這種情況? –

相關問題