送り先のページをキャプチャして返すものを評価する

私たちは、私の両親(私は学区のために働いています)が地区とクラスのリソースにアクセスできるようにするシステムを持っています。これは、問題の原因となるサードパーティの製品です。親がログインすると、実際に私が構築したサイトにログインしています。自分のアカウントでいくつか小切手をして、サードパーティのサイトに渡す権限があるかどうかを確認する必要があります。彼らが許可されている場合、私は単に親の適切なログイン情報を使って自動フォーム提出を行います。

私が抱えている問題は、ベンダーが定期的に新しいデータを読み込まないということです。私の学校の1つに新しく生徒が登録された場合、親は私の側でログインして承認することができますが、私はサードパーティのサイトに送信すると、生徒がいないというエラーメッセージが表示されます。私は彼らが親を許可するかどうかをベンダーに問い合わせる方法がない。

私がする必要があるのは、エラーメッセージのバッファをテストできるように、バッファに結果のページをキャプチャする「テスト」モードでサードパーティに送信するフォームを実行することです。エラーメッセージが存在する場合、私はそれらを私の側に保ち、基本的なリソースを提示します。それ以外の場合は、エラーメッセージが存在しない場合は、実際のフォーム送信を行い、ブラウザのリダイレクトを許可する必要があります。おそらく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コードビハインド:

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
2

1 答え

私が正しく理解していれば、これを達成できる方法は、Socketまたは WebRequest クラスを使用して手動HTTPPostを実行することです。

WebRequestクラスの使用

ソケット

私はWebRequestクラスを使用します。なぜなら、WebRequestクラスはより簡単で高速であり、オンラインでたくさんのサンプルを見つけることができるからです。

がんばろう!

0
追加された
私たちは近くにいるが、それほどではない。私は、動作しているここの例を見つけました。渡すURIは、ベンダーのログインフォームです。フォームデータ(ユーザー名/パスワード)が送信されているように見えますが、ログインフォームの「送信」が「クリック」されていないため、ログイン結果ではなく実際のベンダーログインページが返されます。どのようなサンプルが間違っていますか?私は違って見えるものを見つけることができません。
追加された 著者 jtpowers,
さて、私はSnifferを使用しませんでしたが、何が起こっていたのか把握することができました。最終的には、WebRequestクラスを使用したソリューションがこの問題を解決しました。私はあなたに信用を与えようとしましたが、私はこのフォーラムのユーザーにとって新しくて、あなたの答えに投票することはできません。助けてくれてありがとう。
追加された 著者 jtpowers,
Snifferを使ってパッケージ分析をしましたか?あなたは何が起こっているかを正確に見るために試してみるべきです。おそらく、フォームが送信された後にリダイレクトを行うか、または希望の結果を持つhidden divを持つ同じログインページである可能性があります。もっとお手伝いしたいと思いますが、実際のページがなければ私はできません。
追加された 著者 Hanlet Escaño,
優秀な!私は嬉しいです。あなたが私に信用を与えることができないとしても、答えとしてマークすることはできます。がんばろう!
追加された 著者 Hanlet Escaño,
JavaScript - 日本のコミュニティ
JavaScript - 日本のコミュニティ
2 参加者の

日本人コミュニティのjavascript