Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从web API调用获取响应_C#_Asp.net_Web Services - Fatal编程技术网

C# 如何从web API调用获取响应

C# 如何从web API调用获取响应,c#,asp.net,web-services,C#,Asp.net,Web Services,我有一个API,我想调用它并得到响应。然后我想把这个响应赋给一个变量 我有一个API,比如: http://example.org/Webservicesms_get_userbalance.aspx?user=xxxx&passwd=xxxx 当我在浏览器中运行此URL时,它会打印短信余额。我希望此短信余额作为响应,然后将其分配给我页面中的变量。您的服务是一个.aspx页面,它只返回文本(短信余额),不返回html? 如果是这样的话,你可以“刮” string urlData = S

我有一个API,我想调用它并得到响应。然后我想把这个响应赋给一个变量

我有一个API,比如:

http://example.org/Webservicesms_get_userbalance.aspx?user=xxxx&passwd=xxxx

当我在浏览器中运行此URL时,它会打印短信余额。我希望此短信余额作为响应,然后将其分配给我页面中的变量。

您的服务是一个.aspx页面,它只返回文本(短信余额),不返回html? 如果是这样的话,你可以“刮”

string urlData = String.Empty;
WebClient wc = new WebClient();
urlData = wc.DownloadString("http://domainname/Webservicesms_get_userbalance.aspx?user=xxxx&passwd=xxxx");
你也可以使用class


当然,您可以将控制台.WriteLine更改为您想对响应执行的任何操作。

ajax调用可能会完成您的工作…@Yves M您能描述一下吗?您尝试了哪些操作,哪些部分给您带来了问题?例如,您使用过哪些搜索词的搜索结果为空?请编辑问题以添加此信息…+1;这可能是我见过的最常见的例子。但为什么它比尼尔给出的答案要好呢?它是否适用于较旧的代码?要让它正常工作,你需要包括的程序集是否更少?@MerlynMorgan-Graham不认为我的答案比Neil的好。我可以说,WebClient需要STA线程才能在其中运行。WebRequest在.NET4、3.5、3.0、2.0、1.1、1.0中都受支持,所以它应该可以工作。这感觉比使用DownloadString更快。
WebRequest request = WebRequest.Create ("http://domainname/Webservicesms_get_userbalance.aspx?user=xxxx&passwd=xxxx");

// Get the response.
HttpWebResponse response = (HttpWebResponse)request.GetResponse ();

// Get the stream containing content returned by the server.
Stream dataStream = response.GetResponseStream ();
// Open the stream using a StreamReader for easy access.
StreamReader reader = new StreamReader (dataStream);
// Read the content.
string responseFromServer = reader.ReadToEnd ();
// Display the content.
Console.WriteLine (responseFromServer);
// Cleanup the streams and the response.
reader.Close ();
dataStream.Close ();
response.Close ();