C# HttpClient请求

  from:https://www.cnblogs.com/louby/p/8021527.html

龙生   07 Oct 2018
View Details

c# Http请求之HttpClient

利用HttpClient进行Http请求,基于此,简单地封装了下:

有关更多的Http请求,请看这里:https://github.com/wangqiang3311/HttpRequestDemo from:http://www.cnblogs.com/wangqiang3311/p/8991214.html

龙生   07 Oct 2018
View Details

C# 中使用System.Net.Http.HttpClient 模拟登录博客园 (GET/POST)

一、 System.Net.Http.HttpClient简介 System.Net.Http 是微软.net4.5中推出的HTTP 应用程序的编程接口, 微软称之为“现代化的 HTTP 编程接口”, 主要提供如下内容: 1. 用户通过 HTTP 使用现代化的 Web Service 的客户端组件; 2. 能够同时在客户端与服务端同时使用的 HTTP 组件(比如处理 HTTP 标头和消息), 为客户端和服务端提供一致的编程模型。 个人看来是抄袭apache http client ,目前网上用的人好像不多,个人认为使用httpclient最大的好处是:不用自己管理cookie,只要负责写好请求即可。 由于网上资料不多,这里借登录博客园网站做个简单的总结其get和post请求的用法。 查看微软的api可以发现其属性方法:http://msdn.microsoft.com/zh-cn/library/system.net.http.httpclient.aspx 由其api可以看出如果想设置请求头只需要在DefaultRequestHeaders里进行设置 创建httpcliet可以直接new HttpClient() 发送请求可以按发送方式分别调用其方法,如get调用GetAsync(Uri),post调用PostAsync(Uri, HttpContent),其它依此类推。。。 二、实例(模拟post登录博客园) 首先,需要说明的是,本实例环境是win7 64位+vs 2013+ .net 4.5框架。 1.使用vs2013新建一个控制台程序,或者窗体程序,如下图所示: 2.必须引入System.Net.Http框架,否则将不能使用httpclient 3.实现代码

代码分析: 首先,从Main函数开始,调用LoginCnblogs方法; 其次,使用GET方法:

再者,使用POST方法:

最后,注意其返回值可以是string,也可以是byte[],和stream的方式,这里看你需要什么吧。   4.登录成功后的截图 1).使用浏览器登录后的截图: 2).使用Httpcliet登录后的截图:   总结,可以发现C#中HttpClient的用法和Java中非常相似,所以,说其抄袭确实不为过。   from:https://www.cnblogs.com/amosli/p/3918538.html

龙生   07 Oct 2018
View Details

C# HttpClient设置cookies的两种办法 (转发)

一般有两种办法 第一种handler.UseCookies=true(默认为true),默认的会自己带上cookies,例如

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

如果使用场景是:抓取需要登陆后才能看到的网页数据,建议使用第一种,不需要设置任何cookies,httpclient会自动把登陆后的cookies放置到后面的请求中。   原贴 : http://www.cnblogs.com/xiaozhu39505/p/8033108.html from:https://www.cnblogs.com/refuge/p/8060142.html

龙生   07 Oct 2018
View Details

重启IIS某个站点脚本

修改siteName为需要的重启的网站名字,将代码拷入bat文件 @echo off cd  c:\Windows\System32\inetsrv appcmd stop  site  "siteName" appcmd start  site  "siteName"   from:https://blog.csdn.net/a980433875/article/details/52088252

龙生   07 Oct 2018
View Details

Redis 避不开的五种数据结构

Redis 中有 5 种数据结构,分别是字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set),因为使用 Redis 场景的开发中肯定是无法避开这些基础结构的,所以熟练掌握它们也就成了一项必不可少的能力。本文章精要地介绍了 Redis 的这几种数据结构,主要覆盖了它们各自的定义、基本用法与相关要点。 字符串类型 字符串是 Redis 中的最基础的数据结构,我们保存到 Redis 中的 key,也就是键,就是字符串结构的。除此之外,Redis 中其它数据结构也是在字符串的基础上设计的,可见字符串结构对于 Redis 是多么重要。 Redis 中的字符串结构可以保存多种数据类型,如:简单的字符串、JSON、XML、二进制等,但有一点要特别注意:在 Redis 中字符串类型的值最大只能保存 512 MB。 命令 下面通过命令了解一下对字符串类型的操作: 1.设置值

set 命令有几个非必须的选项,下面我们看一下它们的具体说明: EX seconds:为键设置秒级过期时间 PX milliseconds:为键设置毫秒级过期时间 NX:键必须不存在,才可以设置成功,用于添加 XX:键必须存在,才可以设置成功,用于更新 set 命令带上可选参数 NX 和 XX 在实际开发中的作用与 setnx 和 setxx 命令相同。我们知道 setnx 命令只有当 key 不存在的时候才能设置成功,换句话说,也就是同一个 key 在执行 setnx 命令时,只能成功一次,并且由于 Redis 的单线程命令处理机制,即使多个客户端同时执行 setnx 命令,也只有一个客户端执行成功。所以,基于 setnx 这种特性,setnx 命令可以作为分布式锁的一种解决方案。 而 setxx 命令则可以在安全性比较高的场景中使用,因为 set 命令执行时,会执行覆盖的操作,而 setxx 在更新 key 时可以确保该 key 已经存在了,所以为了保证 key 中数据类型的正确性,可以使用 setxx 命令。 2.获取值

3.批量设置值

4.批量获取值

如果有些键不存在,那么它的值将为 nil,也就是空,并且返回结果的顺序与传入时相同。 5.计数

incr 命令用于对值做自增操作,返回的结果分为 […]

龙生   26 Sep 2018
View Details

记聊天服务宕机事件

9月23日,农历8月14,中秋假期。 上午9点,领导微信语音通话说聊天服务挂了。 然后打开网站,果然挂了。 看异常日志,提示程序错误。 然后,果断回滚到上一个版本,还是错误。 然后,再恢复了前一个版本,依然不行。 连接到公司办公环境…… 那只有分析异常日志了,可异常日志记录的堆栈信息只是说那个方法错误,没有具体的信息。 果断去掉异常捕捉try-catch,编译,上线。 服务器日志有错误,已经具体到底层方法和行数了,是log4net写日志错误。 然后恢复日志模块以前的版本,不行,依然写日志错误。 没办法,动手修改这个方法,上传。 这次写日志没错了。 再看操作系统日志,这次提示redis连接对象错误,然后怀疑redis连不上了。 由于是新服务器,没有安装redis客户端;然后下载RedisDesktopManager,从国外站点下载10MB真不容易,30KB/s;然后想把办公电脑的安装程序传到服务器上,总是断开(可能公司的路由器太垃圾);试了几次不行。然后就用winrar压缩成多个小的包,终于传到服务器上了。 安装,测试,………………redis果然不通…………¥!@##@#!@#@##¥@#¥%¥&…………%& 告诉领导redis服务不通…… 领导看了阿云控制台,说忘了续费了,233233~ 续费后,测试redis通了,聊天服务也一切正常了,真折腾啊!! 此时,3个小时已经过去了……本来中秋只放了两天假,这又少了半天,早饭还没吃……不饿。   总结: 主因是redis过期没有续费的原因。 redis不通时,写log4net日志方法确实有错误。 异常日志记录的不够详细,如果记录了redis连不通异常,那就简单多了,也不用那么折腾;

龙生   23 Sep 2018
View Details

Docker for Windows 里的Shared Drives 设置不生效

昨天,帅彬同学出现了一个疑难杂症,具体的可以大致描述成:Docker中的settings里的Shared Drives 选择对应盘符后,点击Apply后无法生效,没办法选择对应盘符进行分享。 解决办法:win+R ,键入gpedit.msc,出现如下界面,找到高亮处的网络访问:本地账户的共享和安全模型,选择如图中的 经典 选项。即可。 原因分析: 由上图可以看出,大致是用户的权限问题导致。   from:https://blog.csdn.net/u012680857/article/details/77970351

龙生   22 Sep 2018
View Details

Windows下Docker查看容器IP地址

docker inspect ––format {{.NetworkSettings.IPAddress}} stupefied_turing

龙生   22 Sep 2018
View Details

vue开源项目

写在前面的 评价纯属个人主观感受,有夸张成分,只是一种表达,如有不喜请无视之。欢迎指正不足和提供更多更好的vue库,项目,方便参考和学习使用。 一、前台UI组件库 1.Element 优点:中文文档,ui种类比较全,ui设计简洁清晰 缺点:不够有特点   2.iView 优点:和element的UI很相似,有一些多的补充,可以相互替换 缺点:仍然没有什么特色   3.Vuetify 优点:时间选择器是时钟样式,比较有特色。中文文档 缺点:种类不如前面全 地址:https://vuetifyjs.com/zh-Hans/ 4.Vue-material 优点:日期选择器配色舒适,进度条样式有虚线形式,步骤条更清晰相比有创新。表单字段点击后文字会上浮 缺点:目前种类还比较少,遗憾没有时间选择器。非中文文档 5.Quasar 构建响应式网站,PWA,混合移动应用程序 打不开,应该是被墙了,无法评论,只有项目 6.Buefy 优点:时间选择器数字很大有特点 缺点:非中文文档 7.Vant 优点:移动端界面,轻量化,基本涵盖移动端交互的ui,和微信样式很像 8.At-ui 一款全新的平面UI套件,专门用于桌面应用程序 优点:颜色比较素雅,UI比较秀气 9.Vue-js-modal 关于模态框的ui库,配色和阴影上适合音乐娱乐类项目 10.Vuex-loading 等待相关进度的一些库 缺点:并不是那么好看,使用的话,最好手动调调整一下样式 11.Vue-js-grid 可移动方格子位置的库 12.Dockeron docker上的ui库,使用后再回补 13.mint-ui 优点:风格简洁,文档中移动端看的效果清晰 缺点:中文字体和间距比例上稍稍偏大 14.Keen-UI  优点:移动端框架,日期选择器比较好看。 缺点:非中文文档 15.VueCircleMenu 优点:提供各种从中间蹦跶出半圆形按钮的组件方案,主流ui库给的比较少,有了它可以不用自己写了 缺点:配色视图有点惨 16.vue-carbon  有点:很淡雅的风格,虽然颜色只有一种,但是字体和间距给的很好,一眼过去很舒服,ui相比要做的事情不会喧宾夺主。 缺点:在中国可能不是主流(国人喜欢花花绿绿,字体大大的) 17.vue-calendar  特别中国特色,排版稍稍有点拥挤,但是有农历,好评! 18.vue-datetime-picker 19.vue2-calendar  优点:日期选择器中支持自定义事件的稀缺 ★181 – 支持lunar和日期事件的日期选择器 20.vue-datepicker 日期选择器简洁大气,希望可以有匹配的时间选择器 21.vue-datepicker  优点:很小巧,没有多余的装饰,不占版面 22.vue-date-picker  ★59 – VueJS日期选择器组件 23.vue-fullcalendar  大格子化日期选择器,酒店入住等游玩类网站会用到 24.vue-datepicker-simple 月份选择排版蛮特别,极少数用这么正红配色的日期选择器 ★20 – 基于vue的日期选择 25.vue-chartjs  可视化图表的vue版本,主要饼形图,条形图,雷达图等都有 缺点:样式太简,使用还需调整,相比百度的Echart还是少太多图类 26.DataVisualization  提供四个最简单的图类,比较实用 缺点:配色上背景太花,前景色饱和度太低,需要调整 ★149 – 数据可视化 27.vue-charts  样式比较好看,但目前图标类型还是太少 ★101 – 轻松渲染一个图表 28.vue-chartkick  […]

龙生   15 Sep 2018
View Details
1 173 174 175 410