.net 模拟登陆 post https 请求跳转页面
AllowAutoRedirect property is true, the Referer property is set automatically when the request is redirected to another site.">如果 AllowAutoRedirect 属性为 true,则 Referer 属性在请求被重定向到另一个站点时自动设置。
Referer HTTP header, set the Referer property to null.">若要清除 RefererHTTP 标头,请将 Referer 属性设置为 null。
如果设置了 Referer 则 指定到某个站点. 被这东西小坑了一下 涨姿势。
private bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true; //总是接受安全证书
} private void test()
{
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
CookieCollection _cookies = null; //后续使用
var addRess = "https://xxxxxxxxxx";
var data = "account=xxxxxxx&password=xxxxx"; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(addRess);
request.CookieContainer = new CookieContainer();
request.Timeout = * ;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.AllowAutoRedirect = true;
request.Referer = addRess; byte[] bs = Encoding.UTF8.GetBytes(data);
HttpWebResponse response = null;
StreamReader myStreamReader = null;
Stream myRequestStream = null;
request.ContentLength = bs.Length;
string retString = string.Empty;
try
{
using (myRequestStream = request.GetRequestStream())
{
myRequestStream.Write(bs, , bs.Length);
myRequestStream.Close();
}
response = (HttpWebResponse)request.GetResponse();
_cookies = response.Cookies;
using (Stream myResponseStream = response.GetResponseStream())
{
using (myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("BIG5")))
{
retString = myStreamReader.ReadToEnd();
}
}
}
catch (Exception)
{ throw;
}
finally
{
if (myRequestStream != null)
{
myRequestStream.Close();
}
if (response != null)
{
response.Close();
}
if (myStreamReader != null)
{
myStreamReader.Close();
}
}
}
.net 模拟登陆 post https 请求跳转页面的更多相关文章
- 杂记-格式化Date默认格式,日期加一天,jstl判断字符类型,ajax模拟from表单后台跳转页面,jstl访问数据库并在页面显示
1.格式化Date默认格式 String str="Sun Oct 08 22:36:45 CST 2017"; SimpleDateFormat sdf = new Simple ...
- 模拟http或https请求,实现ssl下的bugzilla登录、新增BUG,保持会话以及处理token
1.增加相应httpclient 需要的jar包到工程,如果是maven工程请在pom.xml增加以下配置即可: <dependency> <groupId>org.apach ...
- 解决Nginx+Tomcat下客户端https请求跳转成http的问题
Nginx上开启https, 后端使用Tomcat, 两者间走http协议, 但发现如果tomcat应用存在跳转时, 则客户端浏览器会出现400 Bad Request的错误, 通过抓包发现原因是 ...
- http模拟登陆及发请求
首先声明下,如果服务端写入的cookie属性是HttpOnly的,程序是不能自动获取cookie的,需要人工登陆网站获取cookie再把cookie写死,如下图所示: http测试工具:http:// ...
- C#模拟Http与Https请求框架实例
using System.Text; using System.Net; using System.IO; using System.Text.RegularExpressions; using Sy ...
- 使用ajax向后台发送请求跳转页面无效的原因
Ajax只是利用脚本访问对应url获取数据而已,不能做除了获取返回数据以外的其它动作了.所以浏览器端是不会发起重定向的. 1)正常的http url请求,只有浏览器和服务器两个参与者.浏览器端发起一个 ...
- python requests 模拟登陆网站,抓取数据
抓取页面数据的时候,有时候我们需要登陆才可以获取页面资源,那么我们需要登陆以后才可以跳转到对应的资源页面,那么我们需要通过模拟登陆,登陆成功以后再次去抓取对应的数据. 首先我们需要通过手动方式来登陆一 ...
- 模拟登陆,selenium,线程池
一 . 模拟登陆案例(识别验证码) 1 . 打码平台 - 云打码 : www.yundama.com 使用步骤 : - 注册两个账户,普通用户和开发者用户 : - 登陆 普通用户查看余额 登陆开发 ...
- PHP实现curl和snoopy类模拟登陆方法
Snoopy.class.php下载 方法/步骤 第一种:使用snoopy类实现模拟登陆 1.在网上下载一个Snoopy.class.php的文件 2.代码实现: <?php set_t ...
随机推荐
- JDBC数据库
JDBC是Java程序连接和存取数据库的应用程序接口(API),包括两个包:java.sql和javax.sql. 用JDBC访问数据库的一般步骤: 1.建立数据源 2.装入JDBC驱动程序:使用Cl ...
- springboot的拦截器Interceptor的性质
Interceptor在springboot2.x版本的快速入门 实现HandlerInterceptor的接口,并重载它的三个方法:preHandle.postHandle.afterComplet ...
- 关于 this 关键字的使用
package com.jsti.guiyang_01; /* 自定义Phone类 this关键字 代表当前正在调用这个方法(访问成员变量)的对象(实例) 1.在setxxx方法中用来区分成员变量和局 ...
- Android中实现gif动画
一.需求 Android本身没有提供直接显示gif动画的相关控件,因此需要自定义GifImageView类来实现gif的播放,主要是使用的Movie类来解决的. 二.自定义GifImageView p ...
- android hal 诠释
历史原因使Android系统有了HAL,它的角色相当于一个中间人,对上层,它负责给JNI提供调用kernel的方法,对下层,它所提供的方法包含能够访问kernel的函数,即kernel提供给上层的AP ...
- Java编程题(1):n个数里出现次数大于等于n/2的数
题目描述:输入n个整数,输出出现次数大于等于数组长度一半的数. 输入描述:每个测试输入包含 n个空格分割的n个整数,n不超过100,其中有一个整数出现次数大于等于n/2. 输出描述:输出出现次数大于等 ...
- spring mvc jsonp调用示例
服务端代码:主要是返回的时候,返回值要用callback包装一下 /** * JSONP调用 * * @param request * @return */ @RequestMapping(" ...
- [翻译] Visual Studio 2019: 极速编码. 智能工作. 创造未来.
原文: Visual Studio 2019: Code faster. Work smarter. Create the future. Visual Studio 2019 的正式版现在可以下载了 ...
- vs2012升级vs2017后的一些坑
异常信息:未能加载文件或程序集"System.Web.Helpers... 未能加载文件或程序集"System.Web.Helpers, Version=2.0.0.0, Cult ...
- PackageManager整理
一.PackageManager的功能 1.安装.卸载应用.2.查询permission相关信息.3.查询Application相关信息(application,activity,receiver,s ...