XMLHTTPとServerXMLHTTPの違い 質問する

XMLHTTPとServerXMLHTTPの違い 質問する

Web サービスから Excel にデータを取得できる Excel アドインを作成しようとしています。

これを使用するには、ユーザーはアドインによって提供される関数名を入力するだけです。VBA で HTTP リクエストを実装する 2 つの記事を見つけました。XMLHTTPそしてサーバーXMLHTTP

使い方が難しいです。どれを使えばいいのかわかりません。XMLHTTP と ServerXMLHTTP の違いは何ですか?

ベストアンサー1

ダヴズ、

Tim と Jay はどちらも優れた背景情報と簡潔なコメントを提供しています。私は少しだけ補足して、背景情報を提供したいと思います。

本質的には、XMLHTTP オブジェクトは、Web サイト/Web サーバー/Web サービスからデータを要求するために使用される XMLHttpRequest を作成するために使用されます。詳細については、Wikipedia リンクを参照してください。http://en.wikipedia.org/wiki/XMLHttpRequest

一般的に、XMLHTTP は、アプリケーションを使用して Web サービスにリクエストを送信する場合など、クライアントとしてサーバーと通信するときに使用されます。XMLHTTP オブジェクトは、ファイル転送プロトコル (FTP)、URL キャッシュ、その他の便利なツールなど、さまざまなクライアント重視の転送方法にも使用されます。簡単に言うと、XMLHTTP オブジェクトは、FTP 接続を介したサーバーへのアクセス、リポジトリからの一連のファイル、クライアントからのデータを処理する Web サービスなど、何らかのサーバーにリクエストを送信してクライアントにとって興味のあるものをリクエストするために使用されます。

対照的に、ServerXMLHTTP は、サーバー間、アプリケーション (クライアント) との通信、およびクライアントからの要求の処理を目的としています。ServerXMLHTTP オブジェクトは状態をアクティブに保ちます (つまり、送信先との間で送受信された情報は、現在の接続での将来のデータ トランザクションのために保持されます)。ただし、ServerXMLHTTP オブジェクトによって使用される http クライアント スタックの「URL キャッシュ、プロキシ サーバーの自動検出、HTTP/1.1 チャンク、オフライン サポート、Gopher および FTP プロトコルのサポート」などの特定の XMLHTTP 機能はアクティブにサポートしません。

技術的な観点から見ると、XMLHTTP オブジェクトは WinInet (Windows Internet Explorer) を使用して機能し、ServerXMLHTTP オブジェクトはクライアント スタックを使用します。WinInet dll は Windows インターネット プロトコル管理のバックボーンであり、この dll は HTTP、HTTPS、FTP などの要求を処理するために使用されます。

対照的に、ServerXMLHTTP オブジェクトが新しいクライアント HTTP スタックを作成する場合、これは本質的に HTTP クライアントの別の「セッション」です。別のセッションを使用するということは、メモリとソケット接続の可用性に応じて、ServerXMLHTTP オブジェクトの複数のインスタンスがいつでもアクティブになる可能性があることを意味します。

つまり、簡単に言うと、上記のコメントの情報に加えて、XMLHTTP オブジェクトは、情報を要求し、通常はクライアントとして何らかの方法でそれを使用するのによく使用されます。同様に便利ですが、使用法が異なる場合が多い ServerXMLHTTP オブジェクトは、データを要求したり、データを送信したり、受信したデータを別のアプリケーションに比較的効率的に渡したりするのに使用されることがあります。これは、リアルタイムの応答を必要とするビジネス アプリケーションや、一連の要求 (おそらくそれらの要求に組み込まれた条件付き) に基づいてクライアントにデータを提供するのに使用されることが多く、その他にもさまざまな用途があります。

これで両者の違いが少しは明らかになったと思います。SO の質問/回答を読んで、XMLHTTP タイプのリクエストの特定の部分の使用について理解を深めたり、MSDN や、VB、VBA、Microsoft Office のインターネット/XMLHTTPRequest 固有の資料に関するドキュメントを提供しているその他のサイトを詳しく調べたりすれば、さらに多くのことがわかります。

それが役に立つかどうか、または他に質問や考えがある場合はお知らせください。

~JOL

おすすめ記事