1. 程式人生 > >分析Fiddler抓取的豆瓣開發的API介面詳解

分析Fiddler抓取的豆瓣開發的API介面詳解

一、Fiddler Web Sessions部分

1、豆瓣開發的API查詢介面(GET型別的介面):https://api.douban.com/v2/book/search?q=''

2、查詢“挪威的森林”,使用Fiddler進行抓包


3、如上圖我們可以看到,抓到了一個JSON的包,

A、HTTP響應狀態是200,

B、使用到的協議是HTTPS,

C、請求地址的域名是: api.douban.com;

D、請求伺服器路徑為:/v2/book/search?q=%27%E6%8C%AA%E5%A8%81%E7%9A%84%E6%A3%AE%E6%9E%97%27 

E、body請求的大小為:44572位元組

F、請求的快取過期時間或者快取控制header等值(Caching)的資訊為:

    • must-revalidate:響應會被重新用來滿足接下來的請求,但是必須到伺服器端去驗證是否是最新的,
    • no-cache:響應不會被快取
    • private:響應只能夠作為私有的快取,不能再使用者間共享
J、請求響應的型別(Content-Type):application/json; charset=utf-8 H、發出此請求的Windows程序及程序ID(Process):Chrome:3784

二、Request部分


1、Headers

  • 請求頭:get方法+空格+請求伺服器路徑+空格+協議版本
  • Cache-Control:max-age=0表示:每次重新訪問伺服器
  • 客戶端能夠接受的內容型別(Accept):text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
  • 指定瀏覽器可以支援的web伺服器返回內容壓縮編碼型別(Accept-Encoding):gzip, deflate, br
  • 瀏覽器可接受的語言(Accept-Language):zh-CN,zh;q=0.8
  • 請求的使用者資訊(Usr-Agent):Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36
  • Cookies(請求傳送時,把該請求域名下的所有cookie值一起傳送給web伺服器):
         __utma=30149280.1842889463.1506072170.1506072170.1506072170.1
  
__utma:用來記錄網站訪問者的來源, 第一個數(30149280):表示域名的HASH串,對於一個確定的域名來說,這個值不會改變 第二個數(1842889463):識別訪客的ID,不同的值意味著不同的訪問者 第三個數(1506072170):訪客第一次訪問網站的時間,時間為UNIX時間 第四個數(1506072170):訪客前一個visit開始的時間 第五個數(1506072170):這個訪客這一次visit開始的時間 第六個數(1):記錄這個訪客訪問網站的次數
    _utmz
  30149280.1506072170.1.1.utmcsr=baidu|utmccn=(organic)|utmcmd=organic 第一個數(30149280):表示域名的HASH值 第二個數(1842889463):表示隨機數字,是用_ust=Math.round((new Date()).getTime()/1000); 計算出來的 第三個數(1):是__utma的第六個固定常量 第四個數(1):這個訪問者通過不同個來源(除了直接來源)訪問網站的來源數 第五個數(utmcsr=baidu|utmccn=(organic)|utmcmd=organic):表示來源等資訊,如搜尋引擎是百度,
  • security
Upgrade-Insecure-Request:1---如果在https的頁面需要載入http的資源,那麼瀏覽器就會報錯或者提示,為了促進使用者升級協議,同時不需要網站開發者勞師  動眾地把整個網站的http資源改成https資源,chrome增加一個Upgrade-Insecure-Requests: 1頭,告訴伺服器,瀏覽器可以處  理https協議,然後伺服器返回Content-Security-Policy: upgrade-insecure-requests頭,或者通過meta頭設定,告訴瀏覽器,對  於頁面的http資源,請求時可以自動升級到https。
  • transport
Connection:Keep-Alive---表示長連線 Host:域名是:api.douban.com

2、WebForms

q=‘挪威的森林’:搜尋的關鍵字是挪威的森林

3、Cookies


請求傳送的Cookie資料為155byte

4、Raw


  • 請求行:GET https://api.douban.com/v2/book/search?q=%27%E6%8C%AA%E5%A8%81%E7%9A%84%E6%A3%AE%E6%9E%97%27 HTTP/1.1
  • 請求頭部:
Host: api.douban.com
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.8
Cookie: bid=nCTKzrzAtIA; __utma=30149280.1842889463.1506072170.1506072170.1506072170.1; __utmz=30149280.1506072170.1.1.utmcsr=baidu|utmccn=(organic)|utmcmd=organic
  • 請求正文
Get請求沒有請求正文

三、Response部分

1、Headers


  • HTTP/1.1 200 OK:請求成功
  • Cache-Control:must-revalidate, no-cache, private:訪問時都會重新訪問伺服器
  • Date:Sat, 30 Sep 2017....GMT:訪問時間

2、Json


顯示這本書的一些資訊,如這本書在豆瓣的那裡:https://book.douban.com/subject/1046265/,作者的一些資訊等

3、Raw