Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 捕获目标页面以评估其返回的内容_Javascript_Asp.net_Ajax - Fatal编程技术网

Javascript 捕获目标页面以评估其返回的内容

Javascript 捕获目标页面以评估其返回的内容,javascript,asp.net,ajax,Javascript,Asp.net,Ajax,我们有一个系统,允许我在学区工作的父母访问学区和班级资源。它是第三方产品,这是问题的根源。当家长登录时,他们实际上是在登录我创建的站点。我必须对他们的帐户做一些检查,看看他们是否有权转到第三方网站。如果他们得到授权,我只需为家长自动提交一份带有适当登录信息的表单 我遇到的问题是,我们的供应商没有定期加载新数据。因此,如果一名学生是在我们的一所学校新注册的,家长可以在我这边登录并授权,但当我将他们发送到第三方网站时,他们会收到一条错误消息,指示没有学生。我无法查询供应商,看他们是否允许父级进入 我

我们有一个系统,允许我在学区工作的父母访问学区和班级资源。它是第三方产品,这是问题的根源。当家长登录时,他们实际上是在登录我创建的站点。我必须对他们的帐户做一些检查,看看他们是否有权转到第三方网站。如果他们得到授权,我只需为家长自动提交一份带有适当登录信息的表单

我遇到的问题是,我们的供应商没有定期加载新数据。因此,如果一名学生是在我们的一所学校新注册的,家长可以在我这边登录并授权,但当我将他们发送到第三方网站时,他们会收到一条错误消息,指示没有学生。我无法查询供应商,看他们是否允许父级进入

我需要做的是以测试模式运行表单提交给第三方,该模式将在缓冲区中捕获生成的页面,以便测试缓冲区中的错误消息。如果错误消息存在,我会让他们站在我这边,并向他们提供基本资源。否则,如果错误消息不存在,我需要执行实际的表单提交并允许浏览器重新定向。可能是AJAX解决方案吗?现行守则如下:

ASPX页面是的,我有相应的标题等,这是相关代码:

<form method="post" name="loginform" action="http://[destination page]" target="_top">
    <input type="hidden" name="username" value="<% =SessionHandler.UserEmail %>" />
    <input type="hidden" name="password" value="<% =SessionHandler.UserPassword %>" />
    <%--<input type="submit" name="Submit" value="Login" />--%>
</form>
VB代码隐藏:

Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
    Session.Abandon()
    FormsAuthentication.SignOut()
    Page.ClientScript.RegisterStartupScript(Me.[GetType](), "alert", "parentFormSubmit();", True)
End Sub

如果我理解正确的话,您可以通过使用套接字或WebRequest类来执行手动HTTPPost来实现这一点

我会使用WebRequest类,因为它更简单、更快,而且你可以在网上找到大量的样本


祝你好运

如果我理解正确的话,您可以通过使用套接字或WebRequest类来执行手动HTTPPost来实现这一点

我会使用WebRequest类,因为它更简单、更快,而且你可以在网上找到大量的样本


祝你好运

我们很接近,但不太接近。我找到了一个能起作用的。我传递的URI是供应商的登录表单。似乎正在发送表单数据用户名/密码,但没有单击登录表单的提交,因此返回的是实际的供应商登录页面,而不是我需要的登录结果。你知道样本哪里做错了吗?我找不到其他看起来不同的东西。你用嗅探器做过包分析吗?你应该试一试,这样你就能确切地看到发生了什么。它可能在表单提交后进行重定向,也可能是同一个登录页面上有一个隐藏的div,并具有所需的结果。我希望我能帮助你更多,但是没有实际的页面我不能。我没有使用嗅探器,但我能找出发生了什么。最终,使用WebRequest类的解决方案解决了这个问题。我试图给你信用,但它不会让我对你的答案投票,因为我是这个论坛的新用户。谢谢你的帮助,太好了!我很高兴。即使你不能给我信用,你也可以把答案记下来。祝你好运我们很接近,但不太接近。我找到了一个能起作用的。我传递的URI是供应商的登录表单。似乎正在发送表单数据用户名/密码,但没有单击登录表单的提交,因此返回的是实际的供应商登录页面,而不是我需要的登录结果。你知道样本哪里做错了吗?我找不到其他看起来不同的东西。你用嗅探器做过包分析吗?你应该试一试,这样你就能确切地看到发生了什么。它可能在表单提交后进行重定向,也可能是同一个登录页面上有一个隐藏的div,并具有所需的结果。我希望我能帮助你更多,但是没有实际的页面我不能。我没有使用嗅探器,但我能找出发生了什么。最终,使用WebRequest类的解决方案解决了这个问题。我试图给你信用,但它不会让我对你的答案投票,因为我是这个论坛的新用户。谢谢你的帮助,太好了!我很高兴。即使你不能给我信用,你也可以把答案记下来。祝你好运
Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
    Session.Abandon()
    FormsAuthentication.SignOut()
    Page.ClientScript.RegisterStartupScript(Me.[GetType](), "alert", "parentFormSubmit();", True)
End Sub