Tag Archives: javascript

在瀏覽器裡面直接產生 Graphviz 圖片

mdaines/viz.js 這個計畫,直接將 Graphziz 在瀏覽器上畫出來: 可以在這邊測試。其中輸出成 PNG element 的部份在 IE 上需要另外的套件: Internet Explorer 10 and 11 require Fabric.js as an optional dependency for PNG output.

Posted in Browser, Computer, Murmuring, Network, Programming, Software, WWW | Tagged , , , , | Leave a comment

Google Search 是否執行 JavaScript...

在討論 Google Search 是不是會執行 javascript。半年前的文章了,不過最近作者發現又有新東西:「Does Google execute JavaScript?」。 作者用了幾段 javascript 程式碼測試 (可以參考原文),發現其實不保證會執行 javascript,所以還是建議大家乖乖跑 server-side render 產生資料,這樣對其他搜尋引擎的 SEO 也比較好:

Posted in Computer, Murmuring, Network, Programming, Search Engine, WWW | Tagged , , , , , | Leave a comment

Google Chrome 55 的記憶體改善

前陣子 Google Chrome 55 出了,其中最讓人期待的是對記憶體的改善,有人整理了數據:「Chrome 55 uses ~30% less memory than Chrome 54」。 依照作者拿 weather.com 與 reddit.com 測試,前者的記憶體省了 26%,後者省了 30%,都相當明顯。我自己在升到 55 後有明顯感覺到改善,尤其是重開 Chrome 時重新讀取頁面的速度也快了不少... 這些改善主要是出自於「Fall cleaning: Optimizing V8 memory consumption」這邊提到對 V8 engine 的改寫,我感覺到速度變快應該是記憶體用量降低使得 CPU cache rate 提高的關係吧...

Posted in Browser, Computer, GoogleChrome, Murmuring, Network, Software, WWW | Tagged , , , , , , , , , , | Leave a comment

在 CloudFront 的 edge 上跑 Lambda

所以 Amazon CloudFront 讓使用者在 edge 上跑程式了 (雖然目前是 limited preview):「Lambda@Edge – Preview」。 分成 Viewer Request、Origin Request、Origin Response 以及 Viewer Response 四個階段可以插入修改。另外有些限制: Because your JavaScript code will be part of the request/response path, it must be lean, mean, and self-contained. It cannot … Continue reading

Posted in AWS, CDN, Cloud, Computer, Murmuring, Network, Programming, WWW | Tagged , , , , , , , , , , | Leave a comment

利用上傳的檔案跳過 CSP 限制

用 CSP 可以做到一些簡單的保護機制,但在設計不良的情況下還是有辦法繞過。 這次是上傳合法的 JPEG 檔案,但當作 javascript 檔案繞過去:「Bypassing CSP using polyglot JPEGs」。 開頭的「FF D8 FF E0」可以在「List of file signatures」這邊看到是「JPEG raw or in the JFIF or Exif file format」,而這四個字元在 javascript 不會出問題。接下來的「2F 2A」表示 JPEG header 長度,剛好就是「/*」,把後面的東西給包起來,後面再用類似的方式一直組合就打穿了... 這種攻擊要跳過的是「用 CSP 的 self 限制不能引用外部網站 javascript」的限制,但還是有些前提: … Continue reading

Posted in Computer, Murmuring, Network, Security, WWW | Tagged , , , , , , , , , , | 1 Comment

VMware 的 vSphere HTML5 Web Client

vSphere HTML5 Web Client 算是 VMware 對 HTML5 的嘗試,在 HTML5 技術夠彈性的情況下避開使用 Flash 技術的 Web Client。 就畫面上看起來還不錯... 基本的操作應該可以搞定了,之後應該有機會可以拿來玩看看 :o

Posted in Computer, Murmuring, Network, Software, WWW | Tagged , , , , , , , , , | Leave a comment

把所有 HTTP 網站的 JavaScript 都關閉

一直以為 Google Chrome 的 [*.] 只能用在開頭,剛剛測了才發現可以用在中間,所以就用這樣的方式擋下 HTTP 網站的 JavaScript: http://[*.] 這樣就可以減少 HTTP request 被 hijack 插入 javascript 的問題...

Posted in Browser, Computer, GoogleChrome, Murmuring, Network, Security, Software, WWW | Tagged , , , , , , , | Leave a comment

硬派學 JavaScript...

前幾天看到「Someone emailed me asking for tips or sites for learning JavaScript, and this is my final answer.」這篇也是頗有趣的... Read the ECMAScript specification. 下面還花了些篇幅解釋要怎麼讀 XDDD Don’t feel like you have to understand every word. Give yourself permission to just force the words … Continue reading

Posted in Computer, Murmuring, Programming | Tagged , , , , , | 1 Comment

砍站的技巧?

在 Hacker News 上看到的文章,講如何用 JavaScript 砍站:「I Don’t Need No Stinking API – Web Scraping in 2016 and Beyond」。 引起注意的是「Beating CAPTCHA」這邊,直接拿 Antigate 的服務 (付費服務) 來打穿 CAPTCHA,看了一下價錢: Cheapest price on the market - starting from 0.7USD per 1000 images, depending on the … Continue reading

Posted in Computer, Murmuring, Network, Programming, Software | Tagged , , , , , , , , | Leave a comment

Google Chrome 停用平滑捲動

因為把 JavaScript 開回來了,所以有這個困擾... :( Google Chrome 的平滑捲動可以透過 chrome://flags 裡面的設定關閉 (OS X 上則是透過系統設定關閉),但就是有不少網站會很雞婆,用 JavaScript 模擬平滑捲動,所以就花了時間把 extension 寫出來:「Stop Smooth Scrolling」。 由於大多數平滑捲動的作法都是透過對 document 或是 window 上掛上與平滑捲動相關事件做到的,所以我是透過 addEventListener() 與 useCapture flags,然後再用 preventDefault() 擋下後續的處理。 這樣做會有一些問題,其中比較明顯的是地圖類功能的滾輪會失效,這個部分我先放進預設的白名單了,如果有其他的問題,除了可以自己加以外,也可以開 ticket 讓我加進預設清單 :o 實際運作起來大概是這樣: Anyway,寫這個還蠻有趣的,玩了不少新東西: 第一次在 Google Chrome Extension 上寫 … Continue reading

Posted in Browser, Computer, GoogleChrome, Murmuring, Network, Programming, Software, WWW | Tagged , , , , , , , , , , , , , , , , | Leave a comment