是否可以通過HTTP
獲取請求傳遞參數?如果是這樣,那我應該怎麼做呢?我找到了一份HTTP
郵寄要求(link)。在那個例子中,字符串postData
被髮送到一個網絡服務器。我想用來代替。谷歌在HTTP
上找到這個例子得到here。但是沒有參數被髮送到Web服務器。如何使用參數進行HTTP獲取請求
37
A
回答
17
在GET請求中,您將參數作爲查詢字符串的一部分傳遞。
string url = "http://somesite.com?var=12345";
85
第一個WebClient
更容易使用; GET參數在查詢字符串上指定 - 唯一的技巧是記住要轉義任何值:
string address = string.Format(
"http://foobar/somepage?arg1={0}&arg2={1}",
Uri.EscapeDataString("escape me"),
Uri.EscapeDataString("& me !!"));
string text;
using (WebClient client = new WebClient())
{
text = client.DownloadString(address);
}
93
我的首選方法是這樣的。它爲你處理轉義和解析。
WebClient webClient = new WebClient();
webClient.QueryString.Add("param1", "value1");
webClient.QueryString.Add("param2", "value2");
string result = webClient.DownloadString("http://theurl.com");
6
WebRequest對象對我來說似乎太多了。我更喜歡使用WebClient控件。
要使用此函數,只需創建兩個NameValueCollections來存放參數和請求標頭。
考慮以下功能:
private static string DoGET(string URL,NameValueCollection QueryStringParameters = null, NameValueCollection RequestHeaders = null)
{
string ResponseText = null;
using (WebClient client = new WebClient())
{
try
{
if (RequestHeaders != null)
{
if (RequestHeaders.Count > 0)
{
foreach (string header in RequestHeaders.AllKeys)
client.Headers.Add(header, RequestHeaders[header]);
}
}
if (QueryStringParameters != null)
{
if (QueryStringParameters.Count > 0)
{
foreach (string parm in QueryStringParameters.AllKeys)
client.QueryString.Add(parm, QueryStringParameters[parm]);
}
}
byte[] ResponseBytes = client.DownloadData(URL);
ResponseText = Encoding.UTF8.GetString(ResponseBytes);
}
catch (WebException exception)
{
if (exception.Response != null)
{
var responseStream = exception.Response.GetResponseStream();
if (responseStream != null)
{
using (var reader = new StreamReader(responseStream))
{
Response.Write(reader.ReadToEnd());
}
}
}
}
}
return ResponseText;
}
添加您的查詢字符串參數(如果需要)像這樣一個NameValueCollection中。
NameValueCollection QueryStringParameters = new NameValueCollection();
QueryStringParameters.Add("id", "123");
QueryStringParameters.Add("category", "A");
把你的http頭(如果需要的話)作爲NameValueCollection添加如此。
NameValueCollection RequestHttpHeaders = new NameValueCollection();
RequestHttpHeaders.Add("Authorization", "Basic bGF3c2912XBANzg5ITppc2ltCzEF");
0
您也可以直接通過URL傳遞值。
如果你想調用方法 public static void calling(string name){....}
,那麼你應該調用使用HttpWebRequest webrequest = (HttpWebRequest)WebRequest.Create("http://localhost:****/Report/calling?name=Priya); webrequest.Method = "GET"; webrequest.ContentType = "application/text";
只要確保你在URL
相關問題
- 1. 如何使用nodejs HTTP進行HTTP獲取請求?
- 2. jQuery:如何使用參數和正文進行http請求?
- 3. 從Restlet請求獲取HTTP GET參數
- 4. 解析HTTP獲取請求的參數
- 5. WCF使用參數進行POST請求
- 6. 在HTTP中使用ActivatedRoute參數獲取請求
- 7. 使用Play Framework獲取請求參數?
- 8. 使用$ {param}獲取請求參數
- 9. 用Rapture獲取請求Http
- 10. 如何從urls.py獲取請求參數?
- 11. 從TIBCO BW進程獲取HTTP請求
- 12. 如何使用HTTP請求從.jsf頁面獲取數據?
- 13. 如何使用http請求獲取谷歌分析數據?
- 14. 如何使用php進行獲取請求,然後使用jquery進行訪問?
- 15. 使用JSON進行HTTP POST SOAP請求
- 16. 如何使用java獲取http參數?
- 17. 如何進行HTTP PUT請求?
- 18. 在http appengine中獲取http請求參數
- 19. 如何使用javascript取消http請求
- 20. 使用http包獲取請求歷史
- 21. 使用JQuery和Ajax獲取HTTP請求
- 22. 使用http獲取請求獲取XML數據到HTML頁面
- 23. 傳遞參數使用HTTP請求
- 24. 如何從http請求獲取文本
- 25. 如何在Ruby on Rails中進行HTTP請求以從Facebook獲取數據?
- 26. 如何從Node.js http獲取請求中獲取數據
- 27. Python和urllib2:如何使用參數進行GET請求
- 28. 如何獲取從請求字符串參數AJAX POST請求
- 29. 如何在POST請求中獲取GET和POST請求參數?
- 30. 如何替換http請求參數值
如果您輸入完整的網址,包括在住址的參數使用
?Object = value
iexplore的酒吧,然後我得到了同樣的迴應,是從C#提出的http請求得到的# – CruelIO 2009-02-05 09:05:03應該是這樣的。 – EndangeredMassa 2009-02-05 15:22:51