今天公司也没什么事,又要开始学习了。其实我写这篇文章,说不定技术是很低级的,而且很多东东也是学习人家的,不过,就当做事我学习的见证。毕竟刚一出来的学生,还不懂得那么多,让大家见证我的成长历程了。
好了,废话不多说了,尽管这也是废话。
WebClient类,在C#和Delphi中都存在,可以实现post数据提交到服务端,就是模拟你手工输入到表单,然后登陆。这里我比较关心的问题是,java自带的没有这么好的类,不过不用悲观,原来common是下有个httpClient类,可以借用这个类来实现类似的功能。
首先来进行一步步解析吧:
1.找个http/https抓包工具。我这里使用了HttpWatch。先打开www.126.com这个登录页面,你可以先用一个正确的账号登录,然后通过HttpWatch来查看一些信息:如:
我们可以提取,post的地址和请求参数的格式。这里分别为:
POST地址:
http://reg.163.com/logins.jsp?type=1&product=mail126&url=http://entry.mail.126.com/cgi/ntesdoor?hid%3D10010102%26lightweight%3D1%26verifycookie%3D1%26language%3D0%26style%3D-1
请求参数格式:
domain=126.com&language=0&bCookie=&username=jiangshan@126.com&savelogin=&url2=http%3A%2F%2Fmail.126.com%2Ferrorpage%2Ferr_126.htm&user=jiangshan_111&password=4444444&style=-1&secure=&enter.x=%B5%C7%A1%A1%C2%BC
下一步使用WebClient类吧:
namespace MySpace
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;
public class TestLogin
{
public static void Main(string[] args)
{
string postUrl = @" @"http://reg.163.com/logins.jsp?type=1&product=mail126&url=http://entry.mail.126.com/cgi/ntesdoor?hid%3D10010102%26lightweight%3D1%26verifycookie%3D1%26language%3D0%26style%3D-1";";
string postVal = @"";//自己写吧
byte[] postData = System.Text.Encoding.ASCII.GetBytes(postVal);
byte[] returnVal = _client.UploadData(url, postData);
Console.WriteLine("Return:" + System.Text.Encoding.UTF8.GetString(returnVal));
Console.ReadLine();
}
}
}
结果:
下次讲 java的实现,88
- 大小: 56.3 KB
- 大小: 15.4 KB
分享到:
相关推荐
C# WebClient 上传文件 WebClient上传文件至服务器
本篇文章主要介绍了C#中WebClient实现文件下载,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
使用c#实现的HttpClient拼接multipart/form-data形式参数post提交数据,包含图片内容,有需要的可以下载,希望能帮到有需要的人,
C# WEBClient 文件上传下载
下载开箱即用:C#使用WebClient获取网页源文件例子:该例子演示了通过WebClient获取百度首页源文件,并进行UTF8解码,存入一个字符串中。
图片分布式存储 - WebClient - 负载均衡
C#的Winform开发的下载器,下载文件夹,带速度计算和文件下载计算。
本代码通过webclient下载,下载文件支持回调显示进度等。
C#中使用WebClient下载指定url的网络照片示例源码--VS2013
第 1 章软件包介绍WebClient 软件包是 RT-Thread 自主研发的,基于 HTTP 协议的客户端的实现,它提供设备与 HTTP Server 的通
主要介绍了C#使用WebClient登录网站并抓取登录后的网页信息实现方法,涉及C#基于会话操作登陆网页及页面读取相关操作技巧,需要的朋友可以参考下
该资源使用Webclient 类后台自动获取网络上指定的文件内容,下载过程中可以显示实时下载速度和进度,下载完成之后又提示信息。
//用于新手学习异步操作 //例子简单,下载字符串也是一个道理
本程序就主要是通过C# 中的WebClient 类实现对文件的下载功能,其中涉及到进度条,对下载成功与下载失败都会给出相应的提示,本程序是通过VS 2005 开发的,希望给需要在项目中用到下载这个功能的人有所帮助!...
主要介绍了C#中在WebClient中使用post发送数据实现方法,需要的朋友可以参考下
python库,解压后可用。 资源全名:regula.facesdk.webclient-3.0.0-py3-none-any.whl
资源来自pypi官网。 资源全名:regula.facesdk.webclient-3.0.0-py3-none-any.whl
C# WebClient实现文件下载 示例源码
mopidy-musicbox-webclient, Mopidy音乐服务器的网络客户端和 MusicBox Mopidy-MusicBox-Webclient Mopidy是一个前端扩展和基于javascript的web客户端,特别为 Mopidy编写的。特性同样适用于桌面和移动浏览器的响应...
MapGIS WebClient for Vue目录一、开始1、司马云MapGIS ...|-- WebClient-JavaSript |-- cesium -- Cesium的代码结构 |--src -- Cesium源代码 |--docs -- Vuepress文档说明 |-- mapboxgl -- Mapboxgl 代码结构 |--src