C# HttpPost 調用帶有參數的WebService
时间: 2024-06-14 18:04:54 浏览: 169
以下是使用C#进行HttpPost请求调用带有参数的WebService的方法:
```csharp
using System;
using System.Net;
using System.IO;
using System.Text;
public class Program
{
public static void Main(string[] args)
{
// 创建一个WebRequest对象
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://example.com/MyWebService.asmx/MyAction");
// 设置请求方法为POST
request.Method = "POST";
// 设置请求的内容类型为application/x-www-form-urlencoded
request.ContentType = "application/x-www-form-urlencoded";
// 构造请求参数
string postData = "param1=value1¶m2=value2"; // 根据实际情况修改参数
// 将请求参数转换为字节数组
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
// 设置请求的内容长度
request.ContentLength = byteArray.Length;
// 获取请求的输出流
Stream dataStream = request.GetRequestStream();
// 将请求参数写入输出流
dataStream.Write(byteArray, 0, byteArray.Length);
// 关闭输出流
dataStream.Close();
// 发送请求并获取响应
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
// 获取响应的内容
string responseText = string.Empty;
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
responseText = reader.ReadToEnd();
}
// 输出响应内容
Console.WriteLine(responseText);
}
}
```