C# 从c进行Http调用#
有一个经典的asp应用程序,它使用AspHttp.Conn调用.shtml文件。它通过追加所有输入来发出请求,还通过按长度读取响应中的值来读取响应。 这是一个例子C# 从c进行Http调用#,c#,C#,有一个经典的asp应用程序,它使用AspHttp.Conn调用.shtml文件。它通过追加所有输入来发出请求,还通过按长度读取响应中的值来读取响应。 这是一个例子 strMessage= "test.shtml" Set HttpObj = Server.CreateObject("AspHTTP.Conn") HttpObj.Url = url & strMessage HttpObj.PostData = "testarea=" & strRequestData HttpOb
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;
}
注意:您必须添加引用
System.Net.Http
有几种方法,例如使用HttpClient
对象或WebRequest
对象。谷歌上有很多例子。
private async void Process()
{
await HtmlLoadAsync("http://....");
}