从 ASP.NET 中的代码隐藏提交 POST 请求 [重复]

Posted

技术标签:

【中文标题】从 ASP.NET 中的代码隐藏提交 POST 请求 [重复]【英文标题】:Submit POST request from codebehind in ASP.NET [duplicate] 【发布时间】:2014-01-29 20:44:57 【问题描述】:

我需要通过 POST 请求将数据提交给第三方 api,我有要提交的 url,但我试图避免先将数据发送到客户端,然后再从那里再次发布。有没有办法直接从代码隐藏中发布信息?

感谢任何想法。

【问题讨论】:

查看这篇相关文章...***.com/questions/4088625/… 【参考方案1】:

您可以从服务器端将其发布到 url。

查看上一个 *** 问题的示例代码 - HTTP request with post

using (var wb = new WebClient()) 

         var data = new NameValueCollection();
         data["username"] = "myUser";
         data["password"] = "myPassword";


         var response = wb.UploadValues(url, "POST", data); 

使用 WebRequest 类发布。

http://msdn.microsoft.com/en-us/library/debx8sh9(v=vs.110).aspx

您也可以使用 HttpClient 类:

http://msdn.microsoft.com/en-us/library/system.net.http.httpclient(v=vs.110).aspx

希望这会有所帮助。如果您遇到问题,请发布。

【讨论】:

【参考方案2】:

你应该使用 WebRequest 类:

var request = (HttpWebRequest)WebRequest.Create(requestedUrl);
request.Method = 'POST';
using (var resp = (HttpWebResponse)request.GetResponse()) 
    // your logic...

完整信息在这里https://msdn.microsoft.com/en-us/library/debx8sh9(v=vs.110).aspx

【讨论】:

【参考方案3】:

这样的?

string URI = "http://www.myurl.com/post.php";
string myParameters = "param1=value1&param2=value2&param3=value3";

using (WebClient wc = new WebClient())

    wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
    string htmlResult = wc.UploadString(URI, myParameters);

How to post data to specific URL using WebClient in C#

【讨论】:

以上是关于从 ASP.NET 中的代码隐藏提交 POST 请求 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Asp.net中怎么接收post方式提交过来的数据?

asp.net页面的提交方式POST和GET有啥区别?

从 C# 代码隐藏错误创建 ASP.NET 控件

ASP.net post传值出现错误。

Asp.net的post提交方式

ASP.NET MVC ActionResult POST 不提交