C# 用 WebClient 的 Post 方法向 WebServer 传输数据

帮朋友做一个通过Web简单传输数据的例子,百度了一下抄了段代码,完成,效果如下:

其中textBox1里面是客户端需要传输过去的数据,textBox2里面是接收到的返回数据。

代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Net;

namespace WebPost
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string postString = "data1=" + textBox1.Text + "&data2=b";//这里即为传递的参数,可以用工具抓包分析,也可以自己分析,主要是form里面每一个name都要加进来
            byte[] postData = Encoding.UTF8.GetBytes(postString);//编码,尤其是汉字,事先要看下抓取网页的编码方式
            string url = "http://localhost/WebTest1/Receive.aspx";//地址
            WebClient webClient = new WebClient();
            webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");//采取POST方式必须加的header,如果改为GET方式的话就去掉这句话即可
            byte[] responseData = webClient.UploadData(url, "POST", postData);//得到返回字符流
            string srcString = Encoding.UTF8.GetString(responseData);//解码
            textBox2.Text = srcString;
        }
    }
}

服务器端 ASP.NET 代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Receive : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Write (Request.Form["data1"]);
        Response.Write("收到OK!");
        Response.End();
    }
}

WebClient 代码抄自:http://blog.163.com/len_sa/blog/static/2102540932012782222526/

感谢原作者。

时间: 2024-10-12 09:18:26

C# 用 WebClient 的 Post 方法向 WebServer 传输数据的相关文章

C# HttpWebRequest和 webclient 的POST方法

WebClient:1.post字符串 public string SendField_wc(string URL,string CookieData, string postData) { WebClient myWebClient = new WebClient(); myWebClient.Headers.Add("Cookie", CookieData); //添加文章 myWebClient.Headers.Add("Content-Type", &quo

C#中 HttpWebRequest和 webclient 的POST方法

WebClient: 1.post字符串 public string SendField_wc(string URL,string CookieData, string postData) { WebClient myWebClient = new WebClient(); myWebClient.Headers.Add("Cookie", CookieData); //添加文章 myWebClient.Headers.Add("Content-Type", &qu

ThreadLocal生成多线程WebClient

package test; //www.cnblogs.com/chenying99/articles/3213544.html import com.gargoylesoftware.htmlunit.BrowserVersion; import com.gargoylesoftware.htmlunit.NicelyResynchronizingAjaxController; import com.gargoylesoftware.htmlunit.WebClient; //多线程webcl

WebClient的超时问题及解决

WebClient的超时问题及解决 转自:http://blog.163.com/[email protected]/blog/static/62440288201112245345838/ Webclient在下载请求时无法设置请求超时时间和请求读写超时时间.WebClient在异步下载时遇到网络不通等问题时没有响应超时造成app挂起. 1.Webclient请求超时设置      重写Webclient的GetWebRequest方法,为HttpWebRequest添加请求超时及读写超时  

WebClient类

WebClient类提供向 URI 标识的资源发送数据和从 URI 标识的资源接收数据的公共方法. 其实就相当于创建一个请求客户端.可以获取网页和各种各样的信息,包括交互. 通过MSDN来看看WebClient类提供的功能. 一.属性 1.BaseAddress 获取或设置 WebClient 发出请求的基 URI. 2.CachePolicy 对于此 WebClient 实例使用 WebRequest 对象获得的任何资源,获取或设置应用程序的缓存策略. 3.CanRaiseEvents 获取一

C#中 (HTTP+POST) 客户端调用服务端的几种方法

String url = "http://XXXXXXXX"; WebClient webClient = new WebClient(); webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded"); //方法一 byte[] postData = Encoding.GetEncoding("GBK").GetBytes(str); b

WPF中利用WebClient向服务器上传文件

转载:原文地址http://blog.csdn.net/wj1589300/article/details/9255631 WPF中利用WebClient向服务器上传文件 忽然接到一个任务,在WPF中上传文件至服务器~在网上搜了很多种方法,最终决定利用WebCient实现文件的上传工作,看似很简单的任务,却遇到了很多问题.先说一下我的探索步骤吧~ 一.选用WebClient.UploadFile方法 (String,String, String) [csharp] view plaincopyp

WebClient 从服务器下载/获取文件方式

今天主要记录.分享 使用WebClient 下载/获取 文件的两种方式. 话不多说,放置代码. 第一种:使用 WebClient 自封装方法: DownloadFile();  下载方便.直接. /// <summary> /// 下载文件(WebClient.DownloadFile) /// </summary> /// <param name="downFileUrl">下载文件链接地址</param> /// <param

用jsonp来解决跨域问题的三种简单的方法

jsonp实现跨域的方法 使用ajax方法获取数据不能跨域,为了解决这个问题,普遍使用jsonp来实现跨域,下面是对jsonp方法的简单总结: 例子:假如想获取京东的评论的数据,可以在京东的评论面板打开network找到和ajax请求相关的有回调函数callback的请求url, 如找到一个url, 如: 在响应里可以找到回调函数对应的方法: 这是在服务器上写入的方法用来传输数据. 例如获取到的url为 https://club.jd.com/comment/productPageComment