浏览器浏览Web页面的时候也无非是 post 或者 get ,带 cookies 或者不带 cookies 这几种方式。
有了下面这几个方法,什么web页面上的自动投票啊,自动查数据啊等等,全部搞定!
有个工具可以让你查看到IE浏览页面时候的通信内容:httplook , 也顺便推荐一下。
using System.Web;
/// <summary>
/// Post方式请求页面
/// </summary>
/// <param name="url">地址</param>
/// <param name="postData">post数据</param>
/// <returns>响应</returns>
private HttpWebResponse RequestbyPost(string url, string postData)
{
Uri lcUri = new Uri(url);
HttpWebRequest loHttp = (HttpWebRequest)WebRequest.Create(lcUri);
//string lcPostData = HttpUtility.UrlEncode(postData, System.Text.Encoding.Default);
string lcPostData = postData;
loHttp.Method = "POST";
loHttp.ContentType = "application/x-www-form-urlencoded";
loHttp.KeepAlive = true;
byte[] lbPostBuffer = System.Text.Encoding.Default
.GetBytes(lcPostData);
loHttp.ContentLength = lbPostBuffer.Length;
Stream loPostData = loHttp.GetRequestStream();
loPostData.Write(lbPostBuffer, 0, lbPostBuffer.Length);
loPostData.Close();
return (HttpWebResponse)loHttp.GetResponse();
}
/// <summary>
/// Post方式请求页面
/// </summary>
/// <param name="url">地址</param>
/// <param name="postData">post数据</param>
/// <returns>响应</returns>
private HttpWebResponse RequestbyPost(string url, string postData, string cookieHeader)
{
Uri lcUri = new Uri(url);
HttpWebRequest loHttp = (HttpWebRequest)WebRequest.Create(lcUri);
//string lcPostData = HttpUtility.UrlEncode(postData, System.Text.Encoding.Default);
string lcPostData = postData;
loHttp.Method = "POST";
loHttp.ContentType = "application/x-www-form-urlencoded";
CookieContainer cookie1 = new CookieContainer();
loHttp.CookieContainer = cookie1;
loHttp.CookieContainer.SetCookies(lcUri, cookieHeader);
loHttp.KeepAlive = true;
byte[] lbPostBuffer = System.Text.Encoding.Default
.GetBytes(lcPostData);
loHttp.ContentLength = lbPostBuffer.Length;
Stream loPostData = loHttp.GetRequestStream();
loPostData.Write(lbPostBuffer, 0, lbPostBuffer.Length);
loPostData.Close();
return (HttpWebResponse)loHttp.GetResponse();
}
/// <summary>
/// Get方式请求页面
/// </summary>
/// <param name="url">地址</param>
/// <returns>响应</returns>
private HttpWebResponse RequestbyGet(string url)
{
Uri lcUri = new Uri(url);
HttpWebRequest loHttp = (HttpWebRequest)WebRequest.Create(lcUri);
loHttp.Method = "GET";
//loHttp.ContentType = "application/x-www-form-urlencoded";
return (HttpWebResponse)loHttp.GetResponse();
}
/// <summary>
/// Get方式请求页面
/// </summary>
/// <param name="url">地址</param>
/// <param name="cookieHeader">cookieHeader</param>
/// <returns>响应</returns>
private HttpWebResponse RequestbyGet(string url, out string cookieHeader)
{
Uri lcUri = new Uri(url);
HttpWebRequest loHttp = (HttpWebRequest)WebRequest.Create(lcUri);
loHttp.Method = "GET";
//loHttp.ContentType = "application/x-www-form-urlencoded";
loHttp.AllowAutoRedirect = true;
loHttp.CookieContainer = new CookieContainer();
loHttp.KeepAlive = true;
HttpWebResponse httpWebResponse = (HttpWebResponse)loHttp.GetResponse();
cookieHeader = loHttp.CookieContainer.GetCookieHeader(lcUri);
return httpWebResponse;
}
分享到:
相关推荐
* * PHP与Web页面交互 -----PHP 获取表单信息1 课程内容 获取文本框的值 获取文件域的值 获取复选框的值 PHP获取表单信息 在Web开发过程中,表单提交是数据传输过程中很重要的一部分,作为以PHP为后台开发语言的...
* PHP与Web页面交互 -----表单与PHP的关系 课程内容 表单与PHP的关系 提交表单信息 一、表单与PHP的关系 虽然表单是HTML页面的一部分,但是表单与PHP脚本传递数据的过程是无缝衔接的。PHP脚本获取表单中的数据并完成...
内容包括:ASP.NET Web表单的使用,高级ASP.NET页面的开发,ADO.NET的使用,ASP.NET应用程序的使用, ASP.NET应用程序的保护,ASP.NET Web服务的建立,.NET框架的利用,自定义的ASP.NET控件的建立,ASP.NET的应用...
最近在工作中遇到一个需求,有个页面 a.vm,对 ajax 请求的结果进行判断后,获取结果里面的数据传递给一个 URL(b.htm),跳转到新的页面 b.htm。 遇到的问题 因为一开始是 GET 请求,所以当传递的数据过大的时候,...
基于Java编程语言,利用http socket通信技术,写一个小型的web服务器与一个爬虫的测试工具,来对比分析所写的服务器获取到的页面源码与从tomcat获取的相似度。 (1)小型web服务器: 1)支持客户端的网页请求,进行...
Web服务器接到后,进行事务处理,处理结果又通过HTTP传回给Web浏览器,从而在Web浏览器上显示出所请求的页面。 例:假设客户机与www.mycompany.com:8080/mydir/index.html建立了连接,就会发送GET命令:GET /...
浏览器脚本提交get,post等请求给web服务器,由web服务器再次解析请求操作,重复步骤2的后续流程; 17). 当api服务器验证用户身份是,没有可信用户票据,系统提示“未授权的访问操作”,跳转到系统异常处理页面。
使用open()方法,包含请求(post、get)、url地址和是否异步执行操作,使用send()方法发送,最后使用在onreadystatechange回调函数访问成功后获取数据,通过JSON.parse()方式解析数据,最后在前端页面渲染后上显示。...
——getParameter()是获取POST/GET传递的参数值; ——getAttribute()是获取对象容器中的数据值; ——getParameter:用于客户端重定向时,即点击了链接或提交按扭时传值用,即用于在用表单或url重定向传值时接收...
HttpWebRequest类利用HTTP 协议和服务器交互,通过 GET 和 POST 两种方式来对数据进行获取和提交
连接到USGS地震目录的Web应用程序。 用户将能够基于不同的时间范围或位置查找地震数据。 我正在构建此应用程序,以练习全栈开发,用户授权,第三方API,并与Three.js一起玩! 线束 主页:显示地球动画以旋转和示例...
在项目中,如果需要传递一些参数给服务器中的页面,那么可以使用$.get()或者$.post()方法(或者是$.ajax()方法) $.get()方法使用GET方式来进行异步请求。结构为:$.get(url [, data] [, callback] [, type]) $.get()...
GET/POST请求 :grinning_face_with_smiling_eyes: 支持HTTPS协议 :grinning_face_with_smiling_eyes: 支持返回JSON :worried_face: 支持路由方法 :worried_face: 快速开始 HTTP服务器示例 class Program { static ...
这样在ArticleHandler中对应的get或者post方法中就会获取相应的参数。当然,你可以任意的使用正则表达式来配置你的URL 简单易用的数据库操作 Options.DBURL = "jdbc:mysql://localhost:3306/test"; Options....
/*增加Http协议Post上传接口,可以Post一个动态页面(jsp,asp,php...),由动态页面负责解析数据 bool HttpInit(); bool HttpAddPostString(BSTR strName, BSTR strValue); bool HttpAddPostCurrFile(BSTR strFileID, ...
通常,GET是用于获取或列出一个或多个资源,POST用于创建,PUT用于更新或替换,而DELETE则用于删除资源。 例如,GET http://host/context/employees/12345将获取ID为12345的员工的表示。这个响应表示可以是包含...
3.2.3 获取或设置元素值/51 3.2.4 元素样式操作/53 3.3 创建节点元素/58 3.4 插入节点/60 3.4.1 内部插入节点方法/60 3.4.2 外部插入节点方法/64 3.5 复制节点/66 3.6 替换节点/68 3.7 包裹节点/69 3.8 ...
$sContent = GET|POST|upload($sUrl,$aGETParam|$aPOSTParam,$aFileParam[upload的时候需要,其他时候无此参数]); If($sContent!==FALSE){ $aResult = json_decode($sContent,true); //转化成数组 ... //对数组的...
GET/Post/Cookie 注入; 搜索型注入延时; 自动从自带浏览器获取Cookie进行认证; 自动判断数据库类型; 自动获取关键词; 多线程; 高级:代理、敏感词替换/过滤; 报告; WebCruiser v3.5.0更新: 新增...
入门在根文件夹中,您可以运行get_page示例: node examples/get_page.js 要从特定的URL加载: node examples/get_page.js "http://www.cnn.com" 该示例获取页面,然后对所有返回的对象数据执行console.log() 。...