記:一次由面及點,又及逗號的Phantom debug

什麼bug?bug什麼?咋肥四?

這是我司一個客戶端軟件,此處是將業務系統網頁上的圖表截圖,放入客戶端頁面裏。

你也看到了,這圖,,白了。而在頁面上的這貨呢?

生龍活虎,有蹦有跳,可大可小。那麼問題來了,它經歷了什麼?

bug圖的奇幻漂流的,,,還原:

首先,we have a phantomjs , we have a page ,呃♂!screenshot!

沒錯,客戶端通過調用phantomjs將圖表的頁面截下來

但是phantomjs如果直接看她(圖表頁)會被壯漢(login)攔下,

所以,我們爲了成全phantomjs給壯漢偷偷弄了個綠……sso頁,

最初,我懷疑是phantomjs訪問的 sso頁面 有問題。

然後我就找他對了個峙:

我想了想,phantom這孩子怎麼就沒看到呢,我都看到了鴨?

然後我去問了問phantom他咋肥四:

咦?他說妹子找不到衣服了所以沒出來?

然鵝

於是,我去找了下,這個叫做showMchart的衣服在哪:

那麼這個衣服誰提供的呢?

在這,那麼爲啥就沒給出去呢?我王某人懷疑這傢伙根本沒出門!於是我加了這麼一段:

又教phantomjs做這麼個事:

去吧!phantom!於是:

哎?咋啥也沒有呢?這衣服供應商(viewmquadrant.js)根本沒工作啊?

然後我看了看是誰找的這一家:

emmm,竟然還是自動找的,(話說原來還都是沒有這麼多 金三月半 代碼的,咋突然就多了……sigh)

那麼這塊找到的是啥呢?

看起來彷彿沒問題啊?難不成是phantom這孩子去看的時候發生了啥?

然後我準備debug phantom,於是我在叫這孩子的時候加了一段口訣:

--remote-debugger-port=9000

然後扒開這孩子的腦子

然後我在Console裏敲下了__run();+Enter

換行了?說好的運行到Breakpoint呢?於是stackoverflow了一下

我又試了下:

我決定放棄,這孩子腦子不太好使=-=

然後我發現了這個

哦豁,VSC賽高!配置如下:

然後開始愉快的de他!

我們在open之後evaluate之前打個斷點,然後看看這個page裏有沒有加載那個js的script節點

我發現這樣不行。然後決定在源代碼裏寫log,運行結果如下

這不是有麼?明明正常瀏覽器上沒問題,這孩子也加載了js,怎麼就看不到了呢?

於是我懷疑是延時問題,那麼讓我們來等他反應一會:給個5秒。

結果喜(xi)大(wen)普(le)奔(jian):

還是白的

那麼問題來了,與這個圖類似的圖呢?viewChart是個通用的頁,別的小夥伴也通過它來看圖啊

所以我找到了動態散點圖

Owww……這圖就沒問題,尤其對比底層builder之後發現,這倆圖,高度一致!

那麼問題來了:歪?

於是,我開着vsc準備對比一下

好像發現了那裏不對……

唔姆唔姆,給你們標個特寫

對,罪魁禍首是個逗號菌!

完。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章