c# HttpWebRequest Cookie 设置到 webBrowser 控件
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData);
void Form3_Load(object sender, EventArgs e)
{
InternetSetCookie("http://localhost/1.asp",null,Common.cookie );
// webBrowser1.Navigate("http://localhost/1.asp");
webBrowser1.Navigate("http://localhost/1.asp");
}
//get cookie from HttpWebRequest
string s= HttpHelper.httpGet("http://localhost/login.asp");
string cookie= Common.cookie= HttpHelper.myCookieContainer.GetCookieHeader(new Uri("http://localhost/"));
MessageBox.Show(cookie);
public static class HttpHelper
{
public static CookieContainer myCookieContainer = new CookieContainer();
public static void initCookie()
{
myCookieContainer = new CookieContainer();
string cookieStr = "accessID=20170817112826535103; tempID=4007780019; OnceLoginWEB=91919420; lastLoginDate=Thu%20Sep%2020%202018%2014%3A27%3A55%20GMT+0800%20%28China%20Standard%20Time%29; orderSource=10130301; NTKF_T2D_CLIENTID=guestFE5FC01D-72B3-4E96-7D6F-D08ACEE9E294; Hm_lvt_5caa30e0c191a1c525d4a6487bf45a9d=1537424876; Hm_lpvt_5caa30e0c191a1c525d4a6487bf45a9d=1537425679; Hm_lvt_8bcb99d7b6c2fba606d7089f6310d8bc=1537425835; Hm_lpvt_8bcb99d7b6c2fba606d7089f6310d8bc=1537427219; accessToken=baihe-1537427221699-e5a06bb78317b; _fmdata=9YMB%2BufU%2Fi4Gm2L72UeCAckBNQ5bzOuzmv9VtK7zki05zclzrqEhzWoPzAi7UJki9ekiKy4WxkI%2FWQ%2FuZlEqN9vHyrZ%2F9Nh5olgJUqhyjEY%3D";
string[] cookstr = cookieStr.Split(";".ToCharArray());
foreach (string str in cookstr)
{
string[] cookieNameValue = str.Split('=');
Cookie ck = new Cookie(cookieNameValue[0].Trim().ToString(), cookieNameValue[1].Trim().ToString());
ck.Domain = "localhost";//必须写对
myCookieContainer.Add(ck);
}
}
public static string httpGet(string url)
{
string s = "";
try
{
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
req.CookieContainer = myCookieContainer;
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
// Common.cookie = resp.Headers["Set-Cookie"];
//MessageBox.Show(resp.Headers["Set-Cookie"]);
myCookieContainer.Add(resp.Cookies);
StreamReader r = new StreamReader(resp.GetResponseStream());
s = r.ReadToEnd();
r.Close();
resp.Close();
req.Abort();
}
catch (Exception ex)
{
s = ex.Message;
}
return s;
}
public static string httpPost(string url, string post)
{
string s = "";
try
{
byte[] data = Encoding.ASCII.GetBytes(post);
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded;charset=utf-8";
req.ContentLength = data.Length;
req.GetRequestStream().Write(data, 0, data.Length);
req.CookieContainer = myCookieContainer;
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
myCookieContainer.Add(resp.Cookies);
StreamReader r = new StreamReader(resp.GetResponseStream());
s = r.ReadToEnd();
r.Close();
resp.Close();
req.Abort();
}
catch (Exception ex)
{
s = ex.Message;
}
return s;
}
}
c# HttpWebRequest Cookie 设置到 webBrowser 控件的更多相关文章
- WPF 设置WebBrowser控件不弹脚本错误提示框
using System.Reflection; using System.Windows; using System.Windows.Controls; using System.Windows.N ...
- 完美解决C#Webbrowser控件设置Cookie问题
完美解决C#Webbrowser控件设置Cookie问题由于个人项目需求,需要把从抓包里面的Cookie数据写入到webbrowser空控件里,经过百度白百般折腾,结果还是失败,搜索到的答案基本上都是 ...
- Winfrom 中完美设置webbrowser控件内核版本
前言 .NET 版本更新了一代又一代,winform中的webbrowser控件的IE内核版本却始终用的IE7,好多网站都对IE7已经不支持.webbrowser这个控件就显得有些鸡肋,经过查找大佬门 ...
- .net 设置webbrowser控件使用的IE版本
当我们在使用.net的Webbrowser控件时,发现webbrowser展示的内容和我们用浏览器展示的内容不一致,甚至出现:'JSON' is undefined. 原因是webbrowser使用的 ...
- C# WebBrowser控件使用教程与技巧收集
常用的方法 Navigate(string urlString):浏览urlString表示的网址 Navigate(System.Uri url):浏览url表示的网址 Navigate(strin ...
- C#WebBrowser控件使用教程与技巧收集--苏飞收集
C#WebBrowser控件使用教程与技巧收集--苏飞收集 先来看看常用的方法 Navigate(string urlString):浏览urlString表示的网址 Navigate(System. ...
- C#WebBrowser控件使用教程与技巧
获取非input控件的值 webBrowser1.Document.All["控件ID"].InnerText;或webBrowser1.Document.GetElementBy ...
- Delphi WebBrowser控件的使用(大全 good)
Delphi WebBrowser控件的使用 WebBrowser控件属性:1.Application 如果该对象有效,则返回掌管WebBrowser控件的应用程序实现的自动化对象(IDis ...
- WebBrowser控件使用技巧分享
原文:WebBrowser控件使用技巧分享 在发布“淘宝登货员”时发现不少朋友对WebBrowser控件比较感兴趣,故在此分享一下使用心得. 首先分享一个WebBrowser的扩展类(此类所需的dll ...
随机推荐
- web测试实践
参会人员:赵天宇,周静,张双双,张玉 参会地点:微信群 参会内容:决定评测软件 最后会议结论:决定了选择用中国大学mooc(https://www.icourse163.org/)和结合竞品对象-清华 ...
- 分享今天在客户那里遇到的SQLSERVER连接超时以及我的解决办法
分享今天在客户那里遇到的SQLSERVER连接超时以及我的解决办法 客户的环境:SQLSERVER2005,WINDOWS2003 SP2 32位 这次发生连接超时的时间是2013-8-5 21: ...
- MySQL案例-mysqld got signal 11
背景:MySQL-5.7.12, debian 8核16G虚拟机, 业务方反馈在某一个时间点, 出现了大量的数据库报错, 之后恢复正常; 场景:开发查看日志后, 发现在某个时间点, 应用断开了所有与数 ...
- VC 调试版(Debug Version)和发行版(Release Version)
调试是纠正或修改代码,使之可以顺利地编译.运行的过程.为此,VC IDE提供了功能强大的调试和跟踪工具. 1.1.1 调试版(Debug Version)和发行版(Release Version) 开 ...
- [IDEA_3] IDEA 配置 GitHub 并上传项目
0. 说明 参考 Git & GitHub 的安装配置 IDEA 配置 GitHub 并上传项目 1. 安装配置 Git & GitHub 参照 Git & GitHub 的安 ...
- 【转】Spring学习---Spring 学习总结
什么是Spring ? Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson在其著作Expert One-On-One J2EEDev ...
- 【转】Java学习---深入理解线程池
[原文]https://www.toutiao.com/i6566022142666736131/ 我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很 ...
- tikv性能参数调优
tiKV 最底层使用的是 RocksDB(tidb3.0版本中将使用tian存储引擎) 做为持久化存储,所以 TiKV 的很多性能相关的参数都是与 RocksDB 相关的.TiKV 使用了两个 Roc ...
- sed 指定行范围匹配(转)
sed -n '5,10{/pattern/p}' file sed是一个非交互性性文本编辑器,它编辑文件或标准输入 导出的文件拷贝.标准输入可能是来自键盘.文件重定向.字符串或变量,或者是一个管道文 ...
- 网络编程_TCP协议_客户端与服务端
客户端发数据到服务端 Tcp传输,客户端建立的过程. 1,创建tcp客户端socket服务.使用的是Socket对象.建议该对象一创建就明确目的地.要连接的主机. 2,如果连接建立成功,说明数据传输通 ...