从 C# 向 URL 发送 POST 请求 [重复]
Posted
技术标签:
【中文标题】从 C# 向 URL 发送 POST 请求 [重复]【英文标题】:Sending a POST request to a URL from C# [duplicate] 【发布时间】:2017-08-10 02:40:46 【问题描述】:我有一个使用 Azure 托管的 Node 服务器,我可以在其中向 API 发送一个 POST 请求,让它执行某些功能。 API 本身可以工作,我已经用Post Man 对其进行了测试。
对 API 的调用看起来像这样......
http://website.com/api/Foo?name=bar&second=example
这不一定需要返回任何内容,因为调用是无声的并且在后台执行某些操作。 (注意:也许它必须返回一些东西,这是我对这个概念的理解的一个漏洞?)
使用 C#,我如何向该 URL 发出 Web 请求?
我已经根据传递给我的方法的参数构造了 URL(所以上面的名称和类型可以是传递给方法的任何内容)
这是我无法正常工作的到此 URL 的 POST。
这是我尝试过的代码..
void MakeCall(string name, string second)
string url = "http://website.com/api/Foo?name="+name+"&second="+second;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/json";
request.ContentLength = url.Length;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
【问题讨论】:
【参考方案1】:您必须创建一个请求流并写入它,此处的此链接有几种方法可以使用HttpWebRequest
、HttpClient
或使用第 3 方库:
Posting data using C#
【讨论】:
感谢丹为我指明了正确的方向。现在一切正常,使用您链接的答案中提到的第三种方法。以上是关于从 C# 向 URL 发送 POST 请求 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
使用 C# 和 HttpWebRequest 向端点发送 POST 请求
如何使用 C# 在 POST 请求中发送 json 数据 [重复]
如何使用 C# 在 POST 请求中发送 json 请求正文数据