3

機能セットの一部として、(サーバー上の) 外部 API に接続してデータをロードするブラウザー拡張機能を開発しています。

いくつかの理由から、API に接続している拡張機能のバージョンを知っておくと便利です。バージョン間のアップグレード レートを追跡することは有用ですが、それほど重要ではありませんが、拡張機能の古いバージョンで観察されたバグに基づいて、異なる方法で API に対応する必要がある場合があります。

実行中のバージョンを拡張機能がサーバーに知らせる最善の方法は何ですか?

  1. 既存の User-Agent ヘッダーに情報を追加しますか? (つまり、このリクエストは、このブラウザ内の拡張機能から送信されています)
    User-Agent: Mozilla/5.0 (…) Firefox/3.6.3 (MyPlugin/1.2.3.2256)

  2. User-Agent ヘッダーを完全に置き換えますか? (つまり、このリクエストは拡張機能から送信されており、ブラウザによってレンダリングされていないため、元の UA 文字列は重要ではありません)
    User-Agent: MyPlugin/1.2.3.2256

  3. この情報を追跡するためだけに、別のヘッダーをリクエストに追加しますか? (つまり、このリクエストはまだ拡張機能のホスト ブラウザから送信されていますが、追加情報もあります)
    User-Agent: Mozilla/5.0 (…) Firefox/3.6.3
    X-MyPlugin-Version: 1.2.3.2256

User-Agentヘッダーの特定の目的は、リクエストを行っているプログラムに関する情報を渡すことであるため、オプション3は私には少し警官に聞こえますが、他の間に特定の推奨事項があるかどうかはわかりません2 つのオプション

4

1 に答える 1

0

オプション 2 だと思います。この理由は、エンドポイントにリクエストを送信するのはブラウザーではなく、別のプロセスとして解釈できるプラグイン コードだからです。

先のことを考えてみると、プラグインがスタンドアロン アプリケーションなどである場合はどうなるでしょうか。ある形式のエージェントと別の形式のエージェントを用意するのは意味がありません。

これは、必要になる可能性のある関連ブラウザ情報がプラグイン UA にあることも前提としています。

于 2012-03-08T14:43:34.400 に答える