關於跨域請求的設置:
#設置跨域請求的域名 'Access-Control-Allow-Origin' : '*' #設置跨域請求的頭部k/v值 'Access-Control-Allow-Headers' : '' #設置跨域http請求方法 'Access-Control-Allow-Methods' : 'PUT,POST,DELETE' #預請求有效時長 'Access-Control-Max-Age' : '1000'
關於緩存的設置:
#max-age:緩存有效時間(單位S) #s-maxage:代理緩存的有效時間 #public:瀏覽器、代理服務器等所有資源經過的節點都可以緩存 #private:只有發起請求的瀏覽器可以緩存數據 #no-cache: 使用緩存前預先去服務器驗證是否可以使用緩存 #no-store: 禁止使用任何緩存 'Cache-Control' : 'max-age=180,public' #只有請求頭中的x-text-cache的值相同的情況下才返回緩存 'Vary' : 'X-text-cache'
關於數據協商:
#客戶端發送希望得到的數據格式,包括數據類型,數據編碼,數據語言: #瀏覽器作為客戶端發送請求的時候會默認將這些信息加入http頭部 'Accept' : ''
'Accept-Encoding' : ''
'Accept-Language' : ''
'User-Agent' : '' #服務端返回的數據格式,gzib表示數據壓縮 'Content-Type' : ''
'Content-Encoding' : 'gzib'
'Content-Language' : ''
關於緩存驗證的設置:
#數據修改的時間,服務器端回返回一個If-Modified-Since,下次客戶端 #請求數據,會將這個字段發給服務器,服務器將該字段值與Last-Modified #的值進行對比,一樣則返回304,告訴客戶端可以使用緩存,不一樣則返回 #新的數據 'Last-Modified' : '' #數據簽名,通過攜帶數據內容hash值來判斷數據是否修改,服務器回返回 #If-None-Match字段作為數據是否改變的對比 'Etag': ''
關於redirect的設置:
#http返回code是302,301 #302 客戶端每次請求,都會先請求老的url,然后再跳轉到新的url #301 客戶端第一次請求后,會將新的url直接緩存到客戶端,下次請求直接請求新的url #301只有在瀏覽器手動清理緩存后,才會失效,不然每次請求客戶端不再像服務器發起 #請求,而是直接讀取本地內存進行訪問 'Location' : '$url'