社区
C#
帖子详情
请高手过来,能搞定500分相送
daisi
2009-12-24 05:29:29
有高手能模拟登录 北方网:https://secure.enorth.cn/user/login ,没有,用httpwebrequest进行,在下研究了很久,也没有搞定,所以 不得不请教高手!
...全文
1234
89
打赏
收藏
请高手过来,能搞定500分相送
有高手能模拟登录 北方网:https://secure.enorth.cn/user/login ,没有,用httpwebrequest进行,在下研究了很久,也没有搞定,所以 不得不请教高手!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
89 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaoxiaoyu2013
2012-01-09
打赏
举报
回复
我想做个WinForm 程序,模拟登录新浪博客,然后写博客,提交博客
wangfeizjk
2010-01-06
打赏
举报
回复
做个标记
daisi
2010-01-04
打赏
举报
回复
请cuike519过来接分啊
xzjxylophone
2009-12-31
打赏
举报
回复
超强人。。。
deyter
2009-12-31
打赏
举报
回复
mark
Aslangg
2009-12-31
打赏
举报
回复
另外需要申明的是,我只是针对此网友的问题做回答,只是出于学习和研究的目的,其他任何事情与我无关
强人 膜拜下
daisi
2009-12-31
打赏
举报
回复
我也明白楼主是怎么获得第二个sessionid的了,你应该就是在设为false的情况下,重新去get重定向后的页面的cookie得到的吧?如果在true的情况下好像没法直接获得第二个sessionid,所以我直接用原来那个无论怎样都不对,有办法在true下获得第二个seesionid没有呢
daisi
2009-12-31
打赏
举报
回复
楼主你是不是重定向将那个 request.AllowAutoRedirect = false; 然后再单独去get从定向后的网页获取第二个sessionid?有办法在设为true的情况下获取第二个sessionid没有?
szj820
2009-12-30
打赏
举报
回复
mark
yongningzh
2009-12-30
打赏
举报
回复
niu
daisi
2009-12-30
打赏
举报
回复
[Quote=引用 54 楼 cuike519 的回复:]
1、登录现在已经完成。
2、模拟发送blog的方法如下:
由于不知道服务器上到底需要什么数据,首先可以肯定这是一个POST,既然是POST就应该把Form里面的表单项全部POST回去。
关于Cookie肯定保存了登录的相关信息,确定你获得的Cookie里面是否有这个信息,如果没有没关系,你可以模拟一个Cookie。
推荐你使用两个工具(Wireshark,ComView)来跟踪,对于HTTPs的可能看到的都是乱码,但是HTTP的都是明文,所以这个POST应该比前面的登陆要稍微简单些。
下面是我用ComView跟踪的内容:
0x0030 FF FF 70 5C 00 00 50 4F-53 54 20 68 74 74 70 3A p\..POST http:
0x0040 2F 2F 75 2E 65 6E 6F 72-74 68 2E 63 6E 2F 63 6F //u.enorth.cn/co
0x0050 6E 73 6F 6C 65 2F 61 72-74 69 63 6C 65 2E 64 6F nsole/article.do
0x0060 20 48 54 54 50 2F 31 2E-30 0D 0A 41 63 63 65 70 HTTP/1.0..Accep
0x0070 74 3A 20 69 6D 61 67 65-2F 67 69 66 2C 20 69 6D t: image/gif, im
0x0080 61 67 65 2F 78 2D 78 62-69 74 6D 61 70 2C 20 69 age/x-xbitmap, i
0x0090 6D 61 67 65 2F 6A 70 65-67 2C 20 69 6D 61 67 65 mage/jpeg, image
0x00A0 2F 70 6A 70 65 67 2C 20-61 70 70 6C 69 63 61 74 /pjpeg, applicat
0x00B0 69 6F 6E 2F 78 2D 73 68-6F 63 6B 77 61 76 65 2D ion/x-shockwave-
0x00C0 66 6C 61 73 68 2C 20 61-70 70 6C 69 63 61 74 69 flash, applicati
0x00D0 6F 6E 2F 78 2D 6D 73 2D-61 70 70 6C 69 63 61 74 on/x-ms-applicat
0x00E0 69 6F 6E 2C 20 61 70 70-6C 69 63 61 74 69 6F 6E ion, application
0x00F0 2F 78 2D 6D 73 2D 78 62-61 70 2C 20 61 70 70 6C /x-ms-xbap, appl
0x0100 69 63 61 74 69 6F 6E 2F-76 6E 64 2E 6D 73 2D 78 ication/vnd.ms-x
0x0110 70 73 64 6F 63 75 6D 65-6E 74 2C 20 61 70 70 6C psdocument, appl
0x0120 69 63 61 74 69 6F 6E 2F-78 61 6D 6C 2B 78 6D 6C ication/xaml+xml
0x0130 2C 20 2A 2F 2A 0D 0A 52-65 66 65 72 65 72 3A 20 , */*..Referer:
0x0140 68 74 74 70 3A 2F 2F 75-2E 65 6E 6F 72 74 68 2E http://u.enorth.
0x0150 63 6E 2F 63 6F 6E 73 6F-6C 65 2F 61 72 74 69 63 cn/console/artic
0x0160 6C 65 45 64 69 74 2E 64-6F 3B 6A 73 65 73 73 69 leEdit.do;jsessi
0x0170 6F 6E 69 64 3D 44 46 30-33 39 42 41 39 44 43 36 onid=DF039BA9DC6
0x0180 34 34 46 45 42 30 31 38-33 37 43 30 45 39 42 32 44FEB01837C0E9B2
0x0190 32 31 44 41 38 3F 61 63-74 69 6F 6E 3D 61 64 64 21DA8?action=add
0x01A0 6E 65 77 26 74 69 63 6B-65 74 3D 53 54 2D 31 39 new&ticket=ST-19
0x01B0 34 38 35 2D 73 63 71 6F-53 75 66 48 44 4C 42 62 485-scqoSufHDLBb
0x01C0 4B 74 35 4B 56 61 74 4D-2D 75 73 65 72 0D 0A 41 Kt5KVatM-user..A
0x01D0 63 63 65 70 74 2D 4C 61-6E 67 75 61 67 65 3A 20 ccept-Language:
0x01E0 7A 68 2D 63 6E 0D 0A 43-6F 6E 74 65 6E 74 2D 54 zh-cn..Content-T
0x01F0 79 70 65 3A 20 61 70 70-6C 69 63 61 74 69 6F 6E ype: application
0x0200 2F 78 2D 77 77 77 2D 66-6F 72 6D 2D 75 72 6C 65 /x-www-form-urle
0x0210 6E 63 6F 64 65 64 0D 0A-50 72 6F 78 79 2D 43 6F ncoded..Proxy-Co
0x0220 6E 6E 65 63 74 69 6F 6E-3A 20 4B 65 65 70 2D 41 nnection: Keep-A
0x0230 6C 69 76 65 0D 0A 55 73-65 72 2D 41 67 65 6E 74 live..User-Agent
0x0240 3A 20 4D 6F 7A 69 6C 6C-61 2F 34 2E 30 20 : Mozilla/4.0
这里有很多内容,其中包括Referer,Content-Type等等,你在模拟请求的时候这些信息最好都有。关键看下面:
x00E0 3A 20 6E 6F 2D 63 61 63-68 65 0D 0A 43 6F 6F 6B : no-cache..Cook
0x00F0 69 65 3A 20 4A 53 45 53-53 49 4F 4E 49 44 3D 44 ie: JSESSIONID=D
0x0100 46 30 33 39 42 41 39 44-43 36 34 34 46 45 42 30 F039BA9DC644FEB0
0x0110 31 38 33 37 43 30 45 39-42 32 32 31 44 41 38 0D 1837C0E9B221DA8.
这里有个JSESSIONID,这个服务器一定是需要的,你登录的时候已经有这个值了,这时候你可以构造一个Cookie一同发送到服务器上。
下面是提交的表单内容:
0x0030 FF FF EE 23 00 00 61 72-74 69 63 6C 65 2E 74 69 ?..article.ti
0x0040 74 6C 65 3D 74 69 74 6C-65 26 61 72 74 69 63 6C tle=title&articl
0x0050 65 2E 65 78 74 50 72 6F-78 79 2E 61 74 74 44 61 e.extProxy.attDa
0x0060 74 61 25 32 38 63 6F 6E-74 65 6E 74 25 32 39 3D ta%28content%29=
0x0070 25 33 43 50 25 33 45 74-65 73 74 25 33 43 25 32 %3CP%3Etest%3C%2
0x0080 46 50 25 33 45 26 61 72-74 69 63 6C 65 2E 73 79 FP%3E&article.sy
0x0090 73 74 65 6D 54 79 70 65-49 64 3D 36 26 61 72 74 stemTypeId=6&art
0x00A0 69 63 6C 65 2E 63 61 74-65 67 6F 72 79 49 64 3D icle.categoryId=
0x00B0 36 35 39 38 34 39 26 63-61 74 65 67 6F 72 79 54 659849&categoryT
0x00C0 69 74 6C 65 3D 26 61 72-74 69 63 6C 65 2E 74 61 itle=&article.ta
0x00D0 67 3D 74 61 6F 62 61 6F-26 61 72 74 69 63 6C 65 g=taobao&article
0x00E0 2E 76 69 65 77 53 63 6F-70 65 3D 32 26 61 72 74 .viewScope=2&art
0x00F0 69 63 6C 65 2E 65 78 74-50 72 6F 78 79 2E 61 74 icle.extProxy.at
0x0100 74 44 61 74 61 25 32 38-64 69 67 65 73 74 25 32 tData%28digest%2
0x0110 39 3D 26 61 72 74 69 63-6C 65 2E 63 6F 6D 6D 65 9=&article.comme
0x0120 6E 74 53 63 6F 70 65 3D-32 26 61 63 74 69 6F 6E ntScope=2&action
0x0130 3D 61 64 64 6E 65 77 26-61 72 74 69 63 6C 65 2E =addnew&article.
0x0140 73 74 61 74 65 3D 31 26-61 72 74 69 63 6C 65 2E state=1&article.
0x0150 61 72 74 69 63 6C 65 49-64 3D 30 26 72 65 66 65 articleId=0&refe
0x0160 72 3D 6E 75 6C 6C 0D 0A- r=null..
另外需要申明的是,我只是针对此网友的问题做回答,只是出于学习和研究的目的,其他任何事情与我无关。
按照上面的方法可以发送,现在里面有个test的blog就是我这么发送上去的,剩下的楼主自己搞定吧。
[/Quote]
楼主,麻烦把你代码弄出来我看看,我就是不知道我哪儿出错了一点点,检查了好久,还是没成功,望你再指点一二!
daisi
2009-12-30
打赏
举报
回复
另外楼主,你能否将你测试成功的代码发过来学习学习?
daisi
2009-12-30
打赏
举报
回复
[Quote=引用 73 楼 cuike519 的回复:]
呵呵,俺不是什么高手,刚才又研究了一下,说说我的理解吧,我个人认为是完全可以实现的。
理由很简单,其实就是要模拟一个IE而已,IE能处理为什么自己写的程序不能处理?这个完全没有道理。
分析这个网站可以看出这个网站的登录服务器和内容服务器是相互独立的,登录服务器通过https认证,这个是为了保证登录信息的安全,登录成功以后登录服务器会给客户端发一个ticket,这个ticket再去内容服务器验证(这个验证的过程其实就是一个重定向的过程),所以会有两个jsessionid。
我测试的请求序列如下:
GET: https://secure.enorth.cn/user/login -- 这里产生第一个Jsessionid,下一个请求会使用
POST:https://secure.enorth.cn/user/login;jsessionid=第一个Jsessionid,同时产生两个Cookie项,CASPRIVACY,CASTGC(这是一个客户端票)
到这里登录完成,开始重定向
GET :http://u.enorth.cn/ -- 这里会获得第二个JSESSIONID
GET :http://u.enorth.cn/console -- 这里是重定向到我的首页
到此从登录到打开首页就完成了。
至于你说的发帖子,其实也是一样的道理,你的代码已经实现了90%了,继续努力吧。特别注意请求时Cookie项一定要正确,并且注意那个jsessionid。
此贴到这为止吧,不再回复了。
[/Quote]
感谢你的回复,我再自己试试,估计就是第二SESSIONid的问题,谢了,请你过几天接分,500分送给你,我连开5贴,每贴100分,你稍后来接!
ggg2009
2009-12-30
打赏
举报
回复
我是进来学习的。。。
lyangelwing
2009-12-30
打赏
举报
回复
这是一个response和request的使用问题,楼主好好学习~~
LutzMark
2009-12-30
打赏
举报
回复
[Quote=引用 14 楼 qldsrx 的回复:]
看来他是通过SSL进行登录的,为了增强安全性,所以这里的所有人都搞不定。
[/Quote]
up
想搞定,以上那些路走不通
antony1029
2009-12-30
打赏
举报
回复
UP
wang1wang2wang3
2009-12-30
打赏
举报
回复
帮顶~~
cuike519
2009-12-30
打赏
举报
回复
呵呵,俺不是什么高手,刚才又研究了一下,说说我的理解吧,我个人认为是完全可以实现的。
理由很简单,其实就是要模拟一个IE而已,IE能处理为什么自己写的程序不能处理?这个完全没有道理。
分析这个网站可以看出这个网站的登录服务器和内容服务器是相互独立的,登录服务器通过https认证,这个是为了保证登录信息的安全,登录成功以后登录服务器会给客户端发一个ticket,这个ticket再去内容服务器验证(这个验证的过程其实就是一个重定向的过程),所以会有两个jsessionid。
我测试的请求序列如下:
GET: https://secure.enorth.cn/user/login -- 这里产生第一个Jsessionid,下一个请求会使用
POST:https://secure.enorth.cn/user/login;jsessionid=第一个Jsessionid,同时产生两个Cookie项,CASPRIVACY,CASTGC(这是一个客户端票)
到这里登录完成,开始重定向
GET :http://u.enorth.cn/ -- 这里会获得第二个JSESSIONID
GET :http://u.enorth.cn/console -- 这里是重定向到我的首页
到此从登录到打开首页就完成了。
至于你说的发帖子,其实也是一样的道理,你的代码已经实现了90%了,继续努力吧。特别注意请求时Cookie项一定要正确,并且注意那个jsessionid。
此贴到这为止吧,不再回复了。
I2Asp_netcs
2009-12-30
打赏
举报
回复
up
加载更多回复(67)
Elasticsearch顶尖
高手
系列:
高手
进阶篇(一)
第1-节 01_结构化搜索_IT技术论坛案例背景介绍 课程大纲 IT技术论坛,案例背景 IT技术论坛中相关的数据,会在es中建立数据的索引 深度讲解搜索,数据分析,数据建模 特色:纯手工画图剖析各种原理,纯实战驱动讲解各种知识点,知识体系的细致和完整 怎么实战驱动? 核心知识篇,上半季,我们也是纯实战驱动,但是之前没有一个统一的案例背景 IT技术论坛,发各种IT技术的帖子:一种是自己研究了一个技术,就发出来一些研究心得;自己遇到了问题,发个帖子问一问。帖子会有人回复,还会有人浏览。当然了,还有一些论坛会提供
不懂怎么
搞定
人的进来:年业绩千万的老销售给你几招实惠的-没有干货立即跳楼
不懂怎么
搞定
人的进来:年业绩千万的老销售给你几招实惠的-没有干货立即跳楼 作者:大海贼弯刀 日期:2012-3-14 9:40:00 开门见山!老子不写什么职场小说的,现实一样能搞的够彩头。 最近老有几个小兄弟缠着我问销售方法。搞的很烦,写个东西,自己看去!来天涯转过一圈,竟是些职场小说的yy,博得小嫩们多多崇拜,见得多了这种人,拉到现实里面有几个真够那个斤两的?我老刀就在这
[《编程
高手
箴言》读后感]
[《编程
高手
箴言》读后感] 毕业也有几年了,也看了和学了不少东西,《编程
高手
箴言》读后感。有时也想写点什么,但总是觉得头绪很多,一直没有动笔。最近翻了翻梁先生的《编程
高手
箴言》,突然想写点什么,权且用读书笔记的形式写点东西。 等号上面的摘字《箴言》,下面则是笔者自己的感想。希望大家指教,但是谩骂就不必了,谢谢。注:这一部分涉及《箴言》第一章。 在PC这个领域,现在的程序已不等于软件了。
【南卡樱桃|读书笔记《学习
高手
》】
∝学霸分享 6大课 通过英语、写作和SMART原则、OKR工作法、LEO解读五步法等文章。同样适用于国内教育环境。 ∝3 学霸分享,直通世界名校的超级学习法 ∞第18课 LEO手把手教你如何学好英语 ◆第1小课 单词 ◆第2小课 语法 ◆第3小课 听力 ◆第4小课 阅读 ◆第5小课 口语 LEO的学习仪式感 我在不同英语学习阶段使用的教材 ∞第19课 三要素写作法,把文章写到读者心里去 ◆第1小课 Ethos,可信 ◆第2小课 Pathos,情感 ◆第3小课 Logos,逻辑 ◆19-本课核心方法回顾 ∞第
编程
高手
箴言
本书是作者十余年编程生涯中的技术和经验的总结。内容涵盖了从认识CPU、Windows运行机理、 编程语言的运行机理,到代码的规范和风格、分析方法、调试方法和内核优化,内有作者对许多问题 的认知过程和透彻的分析,以及优秀和精彩的编程经验。 第1章 程序点滴 1.1 程序≠软件(1) 1.1 程序≠软件(2) 1.2
高手
是怎样练成的(1) 1.2
高手
是怎样练成的(2) ...
C#
111,119
社区成员
642,545
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章