<?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__);
內容協商技術通常有三種實現方案:
(1)客戶端驅動
客戶端發起請求,伺服器發送可選項列表,客戶端作出選擇後在發送第二次請求。
優點:比較容易實現
缺點:增加了時延,至少要發送兩次請求,第一次請求獲取資源列表,第二次獲取選擇的副本。
(2)伺服器驅動程式
伺服器檢查客戶端的請求首部集並決定提供哪個版本的頁面。
優點:比客戶端驅動的協商快。 HTTP提供了一個q機制,允許伺服器近似匹配,也提供了vary首部供伺服器告知下游的設備(如代理伺服器)如何對請求估值。
缺點:首部集不匹配,伺服器要做猜測
(3)透明協商
某個中間裝置(通常是快取代理)代表客戶端進行協商
優點:免除了web伺服器的協商開銷,比客戶端驅動的協商快。
缺點:HTTP並沒有提供對應的規格
本站所有資源皆由網友貢獻或各大下載網站轉載。請自行檢查軟體的完整性!本站所有資源僅供學習參考。請不要將它們用於商業目的。否則,一切後果都由您負責!如有侵權,請聯絡我們刪除。聯絡方式:admin@php.cn
相關文章
02 Aug 2023
php封裝協定有命名空間、類別、介面、抽象類別、命名規範、異常處理和自動載入這些內容。 1、命名空間,允許開發者將類別、函數、常數等標識符組織在不同的命名空間中,防止命名衝突;2、類,可以繼承其他類,實現接口,還可以定義常數和屬性;3、接口,透過使用接口,代碼的耦合度降低,可擴展性增強;4、抽象類,主要用於定義一個共同的抽象概念,具體的實現由子類完成。
27 Aug 2020
php語言查詢Mysql資料庫內容的方法:首先php頁面在進行瀏覽時需要有php語言執行的環境;然後建立php類別檔案【mysql.php】進行具體的操作;接著建立頁面檔案【index.php】進行接收資料;最後存取路徑即可。
04 Apr 2023
PHP 是一種開源的伺服器端腳本語言,它被廣泛應用於 Web 應用程式和動態網站的開發中。其中,針對資料庫的管理和操作是 PHP 的重要應用之一。在許多 Web 應用程式中,從資料庫中提取資訊並展示給使用者是常見的需求。本文將介紹如何將 PHP 中的資料庫轉換為 HTML。 1. 連接資料庫首先,我們需要連接資料庫。 PHP 中提供了一系列開發工具,例如 PDO 和 MySQLi 擴
27 May 2023
一、ThinkPHP資料庫操作在ThinkPHP中,我們可以透過它提供的資料庫操作類別來進行資料庫的操作。常用的資料庫操作類別有:Db類別在ThinkPHP中,我們可以使用Db類別來進行對資料庫的增、刪、改、查等操作。其使用範例如下:
25 Aug 2024
JPA(Java Persistence API)提供了幾個用於將 Java 類別對應到資料庫表的註解。一個這樣有用的註解是@MappedSuperclass,它用來指定一個類,其屬性必須由其他類別繼承。
03 Jun 2023
第三方類別庫 第三方類別庫指除了ThinkPHP框架、應用專案類別庫之外的其他類別庫,一般由第三方系統或產品提供,如Smarty、Zend等系統的類別庫等。 前面使用自動載入或import方法導入的類別庫,ThinkPHP約定是以.class.php為後綴的,非這類的後綴,需要透過import的參數來控制。 但對第三類庫,由於不會有此約定,其後綴只能認為是php。為了方便的引入其他框架和系統的類別庫,ThinkPHP特意提供了導入第三方類別庫的功能。第三方類別庫統一放置在ThinkPHP系統目錄/