2017-08-10 95 views
0

我有一个使用Azure托管的节点服务器,我可以在其中向API发送POST请求以执行某些功能。 API本身有效,我用Post Man进行了测试。发送一个POST请求到一个来自C#的URL请求#

一个调用API会是这个样子..

http://website.com/api/Foo?name=bar&second=example

这并不一定需要返回任何东西,作为呼叫是沉默,做一些事情的背景。 (注:也许必须返回的东西,这是在我的概念的理解洞)


使用C#,我怎样才能使一个Web请求这个网址?

我已经构建基于传递给我的方法参数的URL(这样的名字,并与上述类型可以是任何被传递给方法)

这是张贴到这个网址,我不能得到正常工作。

这是我试过的代码..

 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(); 
     } 

回答

0

你必须创建一个请求流和写入,这个环节在这里有几种方法可以做到这一点无论与HttpWebRequestHttpClient或使用第三方库:

Posting data using C#

+0

感谢您指出我在正确的方向丹。现在所有人都在使用您链接的答案中提到的第三种方法。 – Bejasc