1

簡単な質問です。

ユーザーにデータを入力するためのフォームを提供し、ユーザーが処理のためにフォームを「送信」するレガシーWebサイト(私の管理下になく、変更できない)があります。このフォームには実質的にエラー チェックがなく、ユーザーの助けもほとんどありません (つまり、約 12 年前に設計が非常に貧弱で、それ以来更新されていません)。

それにもかかわらず、このアプリケーションのバックエンドは重要な機能を実行します。

私の質問は、別のサーバーとドメインにあるasp.netに独自の新しいフロントエンドを(適切な事前送信検証を使用して)記述し、シミュレートすることは可能ですか(レガシーWebサイトを変更する機能はありません)送信されているフォーム/データを再現する限り、別の Web サーバーに「送信」しますか?

ここでの重要な質問は、ある Web サイトで生成されたフォームを別の Web サイトに送信することは可能ですか? また、レガシー サイトに何らかの変更を加えることで、これを実行できるでしょうか?

コメントをお待ちしております。

4

3 に答える 3

1

ここでの重要な質問は、ある Web サイトで生成されたフォームを別の Web サイトに送信することは可能ですか? また、レガシー サイトに何らかの変更を加えることで、これを実行できるでしょうか?

はい、以前にこれを行ったことがあります - ターゲット サイトがリファラー チェックを行わない場合に限ります。POST リクエストは、発信元がどこであっても POST リクエストです。

すべてのフィールドが元のページからのものとまったく同じであることを確認する必要があります。つまり、同じフィールド名、同じエンコーディングなどです。

于 2009-01-28T15:57:06.757 に答える
0

短い答えは「はい」、長い答えは「場合による」です。HTML と HTTP の基本はそれを可能にしますが、レガシー サイトの実装についてもう少し知らなければ、それが機能するかどうかはわかりません。

理論的には、フィールドの名前が同じであることを確認し、フォームのターゲットをレガシー サイトのページ URL に設定するだけで済みます。

実際には、レガシー サイトは、達成を困難または不可能にするさまざまなことを行っている可能性があります (たとえば、Cookie を正しく設定する必要があるか、内部状態を保持する必要がある場合があります)。

一番いいのは、試してみることです。基本的なフィールドをモックアップし、フォームを投稿して機能するかどうかを確認するだけでも、それほど時間はかかりません。それが機能することがわかったら、追加の検証などを追加することについて心配することができます

于 2009-01-28T16:01:50.520 に答える
0

既存のサイトがユーザーを認証している場合は、その情報も収集して渡す方法を見つける必要があることに注意してください。とはいえ、フィルの主張は的を射ている。

于 2009-01-28T15:59:11.697 に答える