2

Delphi 5 プロ イントラウェブ 7

データ アクセスを処理するために TDataSet の子孫を持つ「レガシー」バックエンド (B-Tree Filer) を使用する Intraweb アプリケーションがあります。すべてが順調で、私の側ではダンディです。

しかし、現在、私のデータへのアクセスを要求する外部の Web サイトがいくつかあります。他のサイトとの統合を処理するためのコミュニケーション ツールとして、単純な HTML フォームの投稿と取得を行いましたが、要求の 1 つでデータの「テーブル」を送り返すように求められています。テーブルの各行は、個々のレコードを表します。

現在のセットアップでこれを達成するにはどうすればよいですか? XML ドキュメントを POST して、他のサイトに "テーブル" を処理させますか? Delphiで使用できるDataSet(DatasetのVBまたは.Netワールド定義のように)に相当するものはありますか?

どんな考えや提案も大歓迎です。

4

2 に答える 2

0

まず、相手側が何を使用しているか (PHP、Java など)、SOAP/XML、JSON/REST などが既に「彼らのやり方を知っているリストにある」かどうかを知りたいです。それから私はそれで行きます。

SOAP または JSON サーバー サービス、またはその他のカスタム ドキュメント (HTML/XML/JSON など) を提供する必要がある場合があります。このデータを取得するために知っておく必要があります。これは、一般的なブラウザーを使用して Web サイトにアクセスする一般ユーザー向けではなく、明らかにユーザー向けです。

于 2011-05-26T19:27:31.897 に答える
0

HTTP POST (相手に戻る) は良い考えです。非同期操作を使用すると、HTTP 要求の外部でデータの収集と変換を実行できます。(マット・ビドルフによるプレゼンテーション「 Dopplr: It's made of messages 」のスライド 4 を参照)

サーバーは小さな HTTP GET リクエスト ( のようなもの/context/loaddata?table=TABLENAME&from=1000&records=100) を受け取り、このリクエストを保存して、すぐに単純なOK.

次に、サーバーは (XML または JSON でエンコードされた) テーブル データを収集して準備し、最後にこのドキュメントを含む HTTP POST を相手の Web サーバーに送信します。この操作が失敗した場合、他のサーバーが OK で応答するまで、簡単に再試行できます。

そのため、データの準備と変換に時間がかかる場合、サーバーがデータの取得と変換でビジー状態になっている間、相手は待つ必要がありません (また、要求のタイムアウトが発生する可能性があります)。

于 2011-05-26T16:28:39.927 に答える