H5移動端調試—weinre

1、背景:

H5頁面在PC上調試起來很方便,可是在手機上卻很麻煩,此時移動端就像一個黑匣子,查看或修改DOM、CSS,localStore等變的很困難。
這個時候遠程調試就孕育而生了。html

2、weinre

2.1 什麼是weinre

Weinre是單詞縮寫,全稱是網頁遠程審查(Web Inspector Remote),發音同winery [ˈwaɪn(ə)ri]。能夠在PC上調
試運行在移動端上的頁面。html5

2.2 weinre能作什麼

clipboard.png
對應上面的菜單,weinre有5大功能node

  1. Element: 查看/修改dom,查看/修改 dom CSSweb

  2. Resources:查看/修改 localStorage, sessionStorageapache

  3. Network:查看網絡請求npm

  4. Timeline:瀏覽器

  5. Console:查看控制檯輸出網絡

2.3 weinre不能作什麼

  1. JS調試session

2.4 weinre原理

目標頁面(target):被調試的頁面,頁面已嵌入weinre的遠程js,下文會介紹;
Debug客戶端(client):本地的Web Inspector調試客戶端;
Debug服務端(agent):一個HTTP Server,爲目標頁面與Debug客戶端創建通訊(target和client不斷的向agent發生get/post請求)。app

clipboard.png
原理就是Client的任何操做命令都會發給target執行,一樣target的任何操做也會發給client執行。

2.5 搭建環境&使用

2.5.1:weinre是基於nodeJs程序,安裝weinre包

npm install -g weinre

2.5.2:啓動weinre服務 (代理【agent】服務)

weinre --boundHost 10.32.69.133 --httpPort 8888

參數說明參考:http://people.apache.org/~pmu...
若是顯示下面內容則說明服務啓動了。

2016-01-19T10:37:26.772Z weinre: starting server at http://10.32.69.133:8888

2.5.3:啓動調試客戶端

在瀏覽器中打開」http://10.32.69.133:8888「便可啓動調試客戶端

2.5.4:建立Target

建立個頁面,並加入如下JS(表示從代理服務中引入target/target-script-min.js)。

<!- IP是weinre服務的IP -->
<script src="http://10.32.69.133:8888/target/target-script-min.js"></script>

進入操做界面就能夠盡情操做了。

2.6 多targets

weinre支持多targets的,不一樣target經過debug id區分的,target js的完整格式:<script src="{代理服務地址}:{代理服務端口}/target/target-script-min.js#{debug id}"></script>
debug id參數就是用來區分各targetd ,若是不傳的話用"anonymous"代替,通常用IP地址做爲debug id。

2.7 操做界面

2.7.1 Remote面板

clipboard.png

2.7.2 Elements面板

A:查看,修改,刪除Dom元素,目前還不能增長DOM元素。
B:查看,修改,刪除Dom元素屬性,目前不支持增長DOM元素屬性。
C:查看,修改,刪除,增長 CSS屬性。

2.7.3 Resources面板

查看,修改,刪除localStorage/sessionStorage。
測試發現:不能刪除,修改,增長???

2.7.4 Network面板

查看XHR請求信息,雖然該面板中有各類網絡請求的類型,可是目前只能查看XHR請求記錄。

2.7.5 Timeline面板

查看target中觸發的事件時間信息(觸發事件)。目前只支持兩種事件:setTimeout/setInterval和用戶指定的事件(經過在事件處理函數中調用console.markTimeline('tag')函數指定)

2.7.6 Console面板

用來執行JS語句和表達式,以及展現console的方法輸出。

參考:

http://www.huolg.net/html5/we...
http://people.apache.org/~pmu...
weinre操做界面:http://people.apache.org/~pmu...
http://muellerware.org/papers...

相關文章
相關標籤/搜索