从 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】:

您必须创建一个请求流并写入它,此处的此链接有几种方法可以使用HttpWebRequestHttpClient 或使用第 3 方库:

Posting data using C#

【讨论】:

感谢丹为我指明了正确的方向。现在一切正常,使用您链接的答案中提到的第三种方法。

以上是关于从 C# 向 URL 发送 POST 请求 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP cURL无法向api发送POST请求

使用 C# 和 HttpWebRequest 向端点发送 POST 请求

如何使用 C# 在 POST 请求中发送 json 数据 [重复]

如何使用 C# 在 POST 请求中发送 json 请求正文数据

如何向 Discord Webhooks C# 发送 POST 请求

如何使用 VBA 从 Excel 向服务器发送 HTTP POST 请求?