从c#进行Http调用
本文关键字:调用 Http 进行 | 更新日期: 2023-09-27 18:02:32
有一个经典的asp应用程序,它使用aspttp . conn调用。shtml文件。它通过附加所有输入来发出请求,并通过按长度读取响应中的值来读取响应。下面是示例
strMessage= "test.shtml"
Set HttpObj = Server.CreateObject("AspHTTP.Conn")
HttpObj.Url = url & strMessage
HttpObj.PostData = "testarea=" & strRequestData
HttpObj.TimeOut = 60
HttpObj.RequestMethod = "post"
strResponseData = HttpObj.GetURL
Response.Write Mid(strResponseData,3,1)
Response.Write Mid(strResponseData,4,3)
如果我需要重写这个,最好的方法是什么?我将使用MVC,并将重写UI。从c#中调用httpcall的最佳方法是什么?请求将被发送到的后端不会被更改。请建议。
使用。net Framework 4.5,你可以发出请求
public static async Task<int> HtmlLoadAsync(string url/*, bool addUserAgent = false*/)
{
try
{
var client = new HttpClient();
//if (addUserAgent) OPTIONAL
//{
// client.DefaultRequestHeaders.UserAgent.ParseAdd(UserAgent);
//}
//client.Timeout = TimeOut;
var response = client.GetStringAsync(url); //here you can change client method according to your required outpu
var urlContents = await response;
// process urlContents now
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
return 0;
}
现在叫它
private async void Process()
{
await HtmlLoadAsync("http://....");
}
注意:必须添加参考System.Net.Http