使用 SHDocVw.WebBrowser获取post数据不全 是怎么个情况 求高手解答

问题描述

小弟今天弄个类似httpcatch的小插件,获取网页提交的post数据,但是总是不全,我只实验了我自己的网站。获取信息如下-----------------------------7dfc72530740Content-Disposition:form-data;name="channelid"1-----------------------------7dfc72530740Content-Disposition:form-data;name="dopost"save-----------------------------7dfc72530740Content-Disposition:form-data;name="title"fdsfdsfsdf123-----------------------------7dfc72530740Content-Disposition:form-data;name="shorttitle"-----------------------------7dfc72530740Content-Disposition:form-data;name="redirecturl"-----------------------------7dfc72530740Content-Disposition:form-data;name="tags"-----------------------------7dfc72530740Content-Disposition:form-data;name="weight"35-----------------------------7dfc72530740Content-Disposition:form-data;name="picname"-----------------------------7dfc72530740Content-Disposition:form-data;name="litpic";filename=""Content-Type:application/octet-stream

而用搜狗浏览器的开发工具获取全了,如下------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="channelid"1------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="dopost"save------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="title"ddddddddddddddd------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="shorttitle"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="redirecturl"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="tags"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="weight"18------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="picname"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="litpic";filename=""Content-Type:application/octet-stream------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="source"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="writer"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="typeid"4------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="typeid2"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="keywords"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="autokey"1------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="description"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="dede_addonfields"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="remote"1------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="autolitpic"1------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="needwatermark"1------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="sptype"hand------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="spsize"5------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="body"ddddddddddddddddddd------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="voteid"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="notpost"0------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="click"79------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="sortup"0------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="color"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="arcrank"0------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="money"0------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="pubdate"2015-01-2016:00:00------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="ishtml"1------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="filename"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="templet"------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="imageField.x"26------WebKitFormBoundaryLPUllvHBy3ZImlBcContent-Disposition:form-data;name="imageField.y"15------WebKitFormBoundaryLPUllvHBy3ZImlBc--

所以看出获取少了,下面是主要代码,请高手指点privatevoidGoUrl(){stringurl=this.txtUrl.Text;SHDocVw.WebBrowserwb=CreateNewWebBrowser();//Returnifnowheretogoif(url=="")return;try{Cursor.Current=Cursors.WaitCursor;Objecto=null;wb.Navigate(url,refo,refo,refo,refo);}finally{inti=this.txtUrl.Items.IndexOf(url);if(i==-1)this.txtUrl.Items.Add(url);Cursor.Current=Cursors.Default;}}privatevoidwb_DocumentComplete(objectpDisp,refobjectURL){SHDocVw.WebBrowserwb=(SHDocVw.WebBrowser)((System.Windows.Forms.WebBrowser)this.WebBrowserTab.TabPages[0].Controls[0]).ActiveXInstance;if(wb.ReadyState==SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE){this.txtUrl.Text=wb.LocationURL;this.toolStripProgressBar1.Value=0;this.toolStripProgressBar1.Visible=false;}this.textBox1.Text=((System.Windows.Forms.WebBrowser)this.WebBrowserTab.TabPages[0].Controls[0]).Document.Cookie.ToString();}privatevoidwb_ProgressChange(intProgress,intProgressMax){this.toolStripProgressBar1.Visible=true;SHDocVw.WebBrowserwb=(SHDocVw.WebBrowser)((System.Windows.Forms.WebBrowser)this.WebBrowserTab.TabPages[0].Controls[0]).ActiveXInstance;if((Progress>0)&&(ProgressMax>0)){this.toolStripProgressBar1.Maximum=ProgressMax;this.toolStripProgressBar1.Step=Progress;this.toolStripProgressBar1.PerformStep();}elseif(wb.ReadyState==SHDocVw.tagREADYSTATE.READYSTATE_COMPLETE){this.toolStripProgressBar1.Value=0;this.toolStripProgressBar1.Visible=false;}}privatevoidwb_StatusTextChange(stringText){this.toolStripStatusLabel1.Text=Text;//Application.DoEvents();}privatevoidwb_NewWindow2(refobjectppDisp,refboolCancel){SHDocVw.WebBrowser_axWebBrowser=CreateNewWebBrowser();ppDisp=_axWebBrowser.Application;_axWebBrowser.RegisterAsBrowser=true;}privatevoidwb_BeforeNavigate2(objectpDisp,refobjectURL,refobjectFlags,refobjectTargetFrameName,refobjectPostData,refobjectHeaders,refboolCancel){stringy=System.Text.Encoding.ASCII.GetString(PostDataasbyte[]);intl=y.Length;byte[]byArr=System.Text.Encoding.ASCII.GetBytes(y);this.textBox2.Text="提交地址:"+URL.ToString()+"ntr"+y;this.textBox1.Text=((System.Windows.Forms.WebBrowser)this.WebBrowserTab.TabPages[0].Controls[0]).Document.Cookie.ToString();}privateSHDocVw.WebBrowserCreateNewWebBrowser(){this.toolSource.Enabled=true;System.Windows.Forms.WebBrowserTmpWebBrowser=newSystem.Windows.Forms.WebBrowser();this.WebBrowserTab.TabPages[0].Controls.Add(TmpWebBrowser);TmpWebBrowser.Dock=DockStyle.Fill;SHDocVw.WebBrowserwb=(SHDocVw.WebBrowser)TmpWebBrowser.ActiveXInstance;wb.CommandStateChange+=newSHDocVw.DWebBrowserEvents2_CommandStateChangeEventHandler(this.wb_CommandStateChange);wb.BeforeNavigate2+=newSHDocVw.DWebBrowserEvents2_BeforeNavigate2EventHandler(this.wb_BeforeNavigate2);wb.ProgressChange+=newSHDocVw.DWebBrowserEvents2_ProgressChangeEventHandler(this.wb_ProgressChange);wb.StatusTextChange+=newSHDocVw.DWebBrowserEvents2_StatusTextChangeEventHandler(this.wb_StatusTextChange);wb.NavigateError+=newSHDocVw.DWebBrowserEvents2_NavigateErrorEventHandler(this.wb_NavigateError);wb.NavigateComplete2+=newSHDocVw.DWebBrowserEvents2_NavigateComplete2EventHandler(this.wb_NavigateComplete2);wb.TitleChange+=newSHDocVw.DWebBrowserEvents2_TitleChangeEventHandler(this.wb_TitleChange);wb.DocumentComplete+=newSHDocVw.DWebBrowserEvents2_DocumentCompleteEventHandler(this.wb_DocumentComplete);wb.NewWindow2+=newSHDocVw.DWebBrowserEvents2_NewWindow2EventHandler(this.wb_NewWindow2);returnwb;}privatevoidwb_CommandStateChange(intCommand,boolEnable){switch(Command){case((int)CommandStateChangeConstants.CSC_NAVIGATEFORWARD):this.toolNext.Enabled=Enable;this.menuNext.Enabled=Enable;break;case((int)CommandStateChangeConstants.CSC_NAVIGATEBACK):this.toolBack.Enabled=Enable;this.menuBack.Enabled=Enable;break;default:break;}}privatevoidwb_NavigateError(objectpDisp,refobjectURL,refobjectFrame,refobjectStatusCode,refboolCancel){}

解决方案

解决方案二:
在线坐等大神
解决方案三:
没人?。。。。。。。。。。。。。。。。。。。。自己顶

时间: 2024-11-29 02:12:29

使用 SHDocVw.WebBrowser获取post数据不全 是怎么个情况 求高手解答的相关文章

线程-java server端发送数据给客户端出现问题,求高手帮忙看下!

问题描述 java server端发送数据给客户端出现问题,求高手帮忙看下! java server端发送数据给客户端出现问题,求高手帮忙看下! package com.zeph.multiclient; import java.io.*; import java.net.ServerSocket; import java.net.Socket; public class MultiThreadServer extends Thread { private Socket client; publ

asp.net中WebBrowser获取post数据程序代码

程序代码  代码如下 复制代码 private void Form1_Load(object sender, EventArgs e) {     webBrowser1.Navigate("about:blank"); //必需,否则WebBrowser.ActiveXInstance值为null     SHDocVw.WebBrowser wb = (SHDocVw.WebBrowser)webBrowser1.ActiveXInstance;     wb.BeforeNavi

求高手解答,如何获取网页flash内某块区域的文字!!!!!!!

问题描述 我有两个问题,1.如何获取网页flash内某块区域的文字2.将我的价格填写到这个flash内某个文本框中 解决方案 解决方案二:玩C#,同时玩flash的不多.解决方案三:你从淘宝上找个flash反编译器.或者花钱让人给你反编译一下.

关于powerdesigner数据建模的一些问题,求大虾解答

问题描述 现在我有两个问题没搞懂1.第一张图中那个粉红色的框框我压根不知道是什么东西.但由于我看人家的教学视频上要做到这样的效果.所以我也想跟着做.主要的话,还是希望各位大虾给我分析一下粉红色框框里面的那三列分别都代表什么,并且告诉我怎么实现.2.第二张图是两个表.中间那个箭头我不太懂什么意思.还有就是中间那行文字.也希望各位大虾给我讲解一下中间那个箭头是什么意思,还有就是怎么实现中间那行文字.下面这张图是我现在做到的效果 解决方案 解决方案二:1.那三个就是view里面用的实际的table2.

关于webbrowser控件加载项的难题,求高手帮忙!!

问题描述 最近需要用到webbrowser控件打开一个网页,但是发现打开的页面无法找到active控件,在ie中控件一切正常,但是如果用webbrowser打开则无法正常使用,可有大神知道如何使用webbrowser加载指定的ocx??网上找遍了居然没有人知道这个问题?? 解决方案 解决方案二:http://www.cnblogs.com/unruledboy/archive/2004/07/01/20228.htmlhttp://www.cnblogs.com/dlwang2002/archi

List里存储的数据库数据怎么到页面上显示都是0呢?求高手解答

问题描述 我的UserAction里的代码如下:privateList<UserBean>findAllUser(){log.info("getalluserinf...");List<UserBean>list=newArrayList<UserBean>();UserBeanuser;Connectionconn=getConn();Stringsql="SELECT*FROMusersORDERBYno";PreparedS

javascript-echarts geocoord如何Ajax动态获取数据库数据问题

问题描述 echarts geocoord如何Ajax动态获取数据库数据问题 1C 求高手解答!谢谢 解决方案 现在tnsnames.ora 中的配置是这样的:SYSIT =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.12)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = sysit))) ISYSIT =(DESCRIPTION =(ADDR

急,求高手!!hive在向整合hbase的分区表插入数据时报错:Must specify table

问题描述 急,求高手!!hive在向整合hbase的分区表插入数据时报错:Must specify table hadoop版本:hadoop-2.7.12.7.1 hbase版本:hbase-1.1.2 hive版本:apache-hive-2.0.0-bin 本人是新手,在整合了hive和hbase之后,我在hive中创建了一张关联了hbase表的分区表,然后在向表插入数据的时候报错了,下面是插入语句和报错,求懂的人解答. visited_in_hive是关联了hbase表,准备插入数据的表

如何让WebBrowser获取单击事件

这个问题来自论坛提问,vs2005的webbrowser控件如何接收鼠标事件,很多事情其实自己动动脑子就有办法的.主要是3步,给dom对象插入js脚本去响应鼠标-〉通过url跳转去通知webbrowser-〉截获跳转事件去c#中处理 示例代码: 1.using System; 2.using System.Windows.Forms; 3.using mshtml; 4.using SHDocVw; 5.namespace WindowsApplication2 6.{ 7. public pa