vb.net POST请求 - 找不到对象 - 我是否需要异步请求?

时间:2017-10-24 09:09:23

标签: javascript vb.net post postback

这里的Longshot和模糊问题 - 我已成功模拟在POST请求中将多部分表单数据发送到内部工作系统以创建用户帐户。现在,当我尝试编辑并保存帐户更改时,我收到内部服务器错误(500)并显示此响应:

[NullReferenceException: Object reference not set to an instance of an object.]
   TheSite.Pages.History.get_SomeHistoryFunction() in C:\Program Files (x86)\ServerSideFilePath\History.ascx.cs:999
   TheSite.Pages.History.Page_Load(Object sender, EventArgs e) in C:\Program Files (x86)\ServerSideFilePath\History.ascx.cs:999
   System.Web.UI.Control.OnLoad(EventArgs e) +102
   System.Web.UI.Control.LoadRecursive() +67
   System.Web.UI.Control.LoadRecursive() +161 ' repeat this line 6 more times
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3810

我不确定响应所指的是什么对象引用,但经过一些挖掘和监控流量后,我看到“application / x-javascript”GET请求在我得到初始响应后被调用请求。

我想我需要发送ASYNC POST请求,以便在初始响应之后对第二个请求进行函数调用吗?

这是我用来发送POST请求的代码,除了这个编辑帐户页面外,完全成功。

  Dim x As Byte() = File.ReadAllBytes(MULTIPART_SEND)

  oCON = WebRequest.Create("https://TheWorkSite/main/ViewEdit.aspx?ID=xyz)
  oCON.Credentials = CredentialCache.DefaultCredentials
  oCON.Method = "POST"
  oCON.ContentLength = x.Length
  oCON.ContentType = "multipart/form-data; boundary=" & theBoundary

  dStr = oCON.GetRequestStream()
  dStr.Write(x, 0, x.Length)
  dStr.Close()

  oRES = oCON.GetResponse ' HERE IS WHERE THE WEB EXCEPTION ERROR IS THROWN
  oSTR = New StreamReader(oRES.GetResponseStream())
  TXT = oSTR.ReadToEnd()

不幸的是,我无法在线发送内部系统详细信息或提供您无法访问的系统的链接,但我注意到函数调用名称是在第一次查看时html顶部附近的脚本中一个页面(我解析viewstate等)和保存之后,我的问题是如何在初始请求中包含此函数调用或字符串?我无法从F12查看器中看到它是如何引用它的,它不是标题或多部分表单的一部分,我无法解析响应中的任何指令,因为响应是Web异常错误!

第二个请求的格式是这个,我想我需要连接它或在我的第一个POST请求后调用它,或者在第一个请求中包含它。

/MySite/main/WebResource.axd?d=SomeABCDEFG=SomeNumbers

我已经开始考虑使用.BeginGetResponse了,但是MSDN页面已经超出了我的想象,我甚至不确定它是否会让我朝着正确的方向前进

任何想法?! :/

0 个答案:

没有答案