検索
ホームページPHP ライブラリその他の図書館コンテンツネゴシエーション PHP ライブラリ
コンテンツネゴシエーション PHP ライブラリ
<?php
if (! ($loader = @include __DIR__ . '/../vendor/autoload.php')) {
    die(<<<EOT
You need to install the project dependencies using Composer:
$ wget http://getcomposer.org/composer.phar
OR
$ curl -s https://getcomposer.org/installer | php
$ php composer.phar install --dev
$ phpunit
EOT
    );
}
$loader->add('Negotiation\Tests', __DIR__);

コンテンツ ネゴシエーション テクノロジには通常、次の 3 つの実装スキームがあります。

(1) クライアント ドライバ

クライアントはリクエストを開始し、サーバーはオプションのリストを送信し、クライアントがリクエストを行った後、選択すると、2 番目のリクエストが送信されます。

利点: 実装が比較的簡単です。

欠点: 遅延が増加します。少なくとも 2 つのリクエストを送信する必要があります。最初のリクエストはリソース リストを取得し、2 番目のリクエストは選択されたコピーを取得します。

(2) サーバー ドライバー

サーバーはクライアントのリクエスト ヘッダー セットを確認し、提供するページのバージョンを決定します。

利点: クライアント主導のネゴシエーションよりも高速です。 HTTP は、サーバーがおおよその一致を判断できるようにする q メカニズムを提供し、サーバーがダウンストリーム デバイス (プロキシ サーバーなど) にリクエストの評価方法を伝えるための Variable ヘッダーも提供します。

欠点: ヘッダー セットが一致しないため、サーバーは推測する必要があります

(3) 透過的なネゴシエーション

中間デバイス (通常はキャッシュ プロキシ) が代わりにネゴシエーションを行います。クライアント

利点: Web サーバーのネゴシエーションのオーバーヘッドが排除され、クライアント主導のネゴシエーションよりも高速です。

欠点: HTTP は対応する仕様を提供していません


免責事項

このサイトのすべてのリソースはネチズンによって提供されたもの、または主要なダウンロード サイトによって転載されたものです。ソフトウェアの整合性をご自身で確認してください。このサイトのすべてのリソースは学習の参考のみを目的としています。商業目的で使用しないでください。そうでない場合は、すべての結果に対して責任を負うことになります。侵害がある場合は、削除するためにご連絡ください。連絡先情報: admin@php.cn

関連記事

cURL はどのように PHP での HTTP リクエストを容易にするのですか?cURL はどのように PHP での HTTP リクエストを容易にするのですか?

30Nov2024

cURL: PHP の HTTP リクエスト ハンドラー PHP 開発の分野では、「cURL」という用語が頻繁に登場します。それは図書館です...

App Engine 上の Golang アプリケーションでパスワードを保護するにはどうすればよいですか?App Engine 上の Golang アプリケーションでパスワードを保護するにはどうすればよいですか?

30Oct2024

App Engine 上の Golang でパスワードを保護するWeb アプリケーションのパスワード ハッシュに関しては、セキュリティが最も重要です。人気の図書館ですが...

iTextSharp を使用してテキストの書式設定情報 (フォント、サイズなど) を抽出するにはどうすればよいですか?iTextSharp を使用してテキストの書式設定情報 (フォント、サイズなど) を抽出するにはどうすればよいですか?

11Jan2025

iTextSharp でテキストの書式設定を行うにはどうすればよいですか?はい、iTextSharp でテキストの書式設定を行うことができます。図書館では次のようなサービスを提供しています...

プレーンな JavaScript を使用してテキストから HTML タグを効率的に削除する方法プレーンな JavaScript を使用してテキストから HTML タグを効率的に削除する方法

27Dec2024

プレーン JavaScript のテキストから HTML タグを削除する文字列から HTML タグを削除することは、Web 開発における一般的なタスクです。図書館もあるのに…

システム設計: 図書館管理システムシステム設計: 図書館管理システム

01Nov2024

Go でライブラリ管理システムを構築する この記事では、Go に実装されたライブラリ管理システム (LMS) について調べて、その中核的な機能、設計上の決定事項、主要なコード スニペットに焦点を当てましょう。 図書館管理の主要な機能

バックエンド マイクロサービス Webflux 用 Ja​​va ライブラリの紹介 (Reactor-core)バックエンド マイクロサービス Webflux 用 Ja​​va ライブラリの紹介 (Reactor-core)

12Jan2025

リンクgithub: https://github.com/hoangtien2k3/reactify-core 1. 図書館の概要 このライブラリは、リアクティブ プログラミングをサポートする 2 つの強力なツールである Spring WebFlux と Reactor-Core のコア コンポーネントに基づいて構築されています。このライブラリを使用すると、

See all articles