tnblog
首页
视频
资源
登录

C# HttpClient设置cookies

10539人阅读 2020/5/22 9:04 总访问:735862 评论:0 收藏:0 手机
分类: .net


通过设置handler.UseCookies=true(默认为true),默认的会自己带上cookies

  1. var handler = new HttpClientHandler() { UseCookies = true };
  2. var client = new HttpClient(handler);// { BaseAddress = baseAddress };
  3. client.DefaultRequestHeaders.Add("user-agent""Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20200101 Firefox/57.0");
  4. client.DefaultRequestHeaders.Add("Connection""Keep-Alive");
  5. client.DefaultRequestHeaders.Add("Keep-Alive""timeout=900");
  6. var content = new FormUrlEncodedContent(new[]
  7.             {
  8.                 new KeyValuePair<stringstring>("email""xj"),
  9.                 new KeyValuePair<stringstring>("password""a"),
  10.             });
  11. var result = await client.PostAsync("https://www.xxjj.com/login/login", content);
  12. result.EnsureSuccessStatusCode();

这种情况post请求登陆成功后,重定向到别的页面,也会自动带上cookies。如果把handler.UseCookies设置为false,登陆后重定向的话不会自动带上cookies,则又会跳转到登陆页面。


这种方法的使用场景:抓取需要登陆后才能看到的网页数据,不需要设置任何cookies,httpclient会自动把登陆后的cookies放置到后面的请求中。

但是也注意,如果仅仅是直接发起请求,它是不会把发起项目本身的cookie信息传递过去的,它带的是你请求网站的cookie


HttpClient手动设置cookie参考

https://www.tnblog.net/xiuxin3/article/details/3832



欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739。有需要软件开发,或者学习软件技术的朋友可以和我联系~(Q:815170684)

评价

C HttpClient手动设置cookie

C# HttpClient手动设置cookie var handler = new HttpClientHandler() { UseCookies = false}; var client = new HttpCli...

C HttpClient 给webapi post接口传递一个参数。传递参数的同时传递一个cookie

webapi post传递一个参数是真的坑,有多坑,可以看看这篇文章:https://www.tnblog.net/aojiancc2/article/details/2874 ...

使用OLEDB读取不同版本Excel的连接字符串设置

使用OleBD读取excel的时候,excel不同的版本,连接字符串的写法也会不一样。///&lt;summary&gt; ///读取excel ///&lt;/su...

NesTable设置不能拖动

让 Nestable 组件不能拖动,直接在jquery.nestable.js 文件中源码搜索var onStartEvent = function(e) 方法里面的list.drag...

让IIS支持webp格式图片让IIS支持vtt格式,iis设置mime类型,iis配置支持的类型

webp格式图片可以让图片体积变小。也让下载图片变得更加困难一点 在线制作webp工具 https://www.upyun.com/webp?utm_mediu...

ServiceStack.Redis操作Redis设置数据过期问题

添加一个key并设置过期时间(例如这个设置2分10秒后过期)TimeSpants=newTimeSpan(0,2,10); byte[]intbit=BitConverter.GetB...

layer.confirm 设置 询问框 的层遮盖

functionadmin_del(obj){ layer.confirm(&#39;确认要重启吗?&#39;,{ btn:[&#39;确定&#39;,&#39;取消&#39;]//按钮 },fun...

AJAX调用webapi上传图片或文件。设置token,设置Authorization Bearer

AJAX调用webapi上传图片或文件,并返回刚上传的文件名。废话不多说直接贴代码吧html相关:&lt;!DOCTYPEhtml&gt; &lt;html&...

设置登陆访问权限

首先创建一个文件夹Filters并新建一个类IsAuthorizeAttribute继承AuthorizeAttribute,分别重写两个方法,如下代码publiccl...

HBuidler X快捷键设置

工具--&gt;自定义快捷键然后找到我们想要自定义的快捷键例如这里的格式化的快捷键左边是不能直接修改的,我们把它复制到右...

css设置边框border透明度,设置阴影透明度

这个世界不止苟且,还有诗和远方。设置边框透明度: border:1px solid transparent; border-color: rgba(151, 151, 151, 0....

Redis缓存Token+设置过期时间+后台设置菜单

今天我们记录一下后台访问接口+Redis缓存数据首先我们要调一下接口这里我们要拿到数据(Token)的话 需要反序列化因为我这个...

svn设置忽略某些文件或者整个文件夹

*/bin */obj :忽略 bin下面的与obj下面的所有文件Aaa.txt : 忽略具体的文件

Camtasia 9设置停止播放快捷键

先点击录制然后再弹出的框框里边点击 :工具--&gt;选项然后在 : 热键--&gt; 停止里边设置就好

.net core cookie设置domain过期时间等

.net core cookie设置domain,过期时间很简单使用CookieOptions对象即可CookieOptionscookieOptions=newCookieOptions(); c...
真诚,善良,美好,温柔,皆是你
排名
9
文章
120
粉丝
5
评论
5
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术