我们有一个系统允许我们的父母(我在学区工作)访问地区和班级资源。它是第三方产品,是问题的根源。当父母登录时,他们实际上是登录到我构建的站点。我必须对他们的帐户进行一些检查,看看他们是否有权传递到第三方网站。如果他们获得授权,我只需使用适当的父母登录信息进行自动表单提交。
我遇到的问题是我们的供应商不会定期加载新数据。因此,如果学生在我们的一所学校新注册,家长可以登录并授权我,但当我将他们发送到第三方网站时,他们会收到一条错误消息,表明没有学生。我无法查询供应商,看看他们是否允许父母进入。
我需要做的是以“测试”模式运行表单提交给第三方,该模式将在缓冲区中捕获结果页面,以便我可以测试缓冲区中的错误消息。如果存在错误消息,我会将它们放在我身边并向它们提供基本资源。否则,如果错误消息不存在,我需要执行实际表单提交并允许浏览器重定向。可能是一个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>
Javascript(执行表单提交):
function parentFormSubmit() {
document.loginform.submit();
}
VB Codebehind:
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
答案 0 :(得分:0)
如果我理解正确的方法是通过使用套接字或WebRequest
类来手动执行HTTPPost。
我会使用WebRequest类,因为它更容易,更快,你可以在网上找到大量的样本。
祝你好运!