2012-01-04 75 views
4

在Google Chrome擴展程序中,如何捕獲VisibleTab並將其保存到服務器端的png文件中?如何captureVisibleTab並將其保存到服務器端的png文件?

+0

只需使用chrome.tabs.captureVisibleTab和XMLHttpRequest。你的問題是什麼? – 2012-01-04 14:15:25

+0

我的問題是,我是谷歌Chrome擴展的初學者,所以有人可以寫代碼應該是怎麼樣的?即使可以支付:) – 2012-01-04 15:42:16

回答

10

下面是一個簡單的例子,展示如何做到這一點:

manifest.json的:

{ 
    "name": "TabCapture", 
    "version": "0.0.1", 
    "description": "Capture a tab", 
    "background_page" : "background.html", 
    "browser_action": { 
    "default_icon": "icon.png", 
    "default_title": "Capture tab"  
    }, 
    "permissions" : ["tabs", "<all_urls>"] 
} 

background.html:

<!DOCTYPE html> 
<html> 
    <script type="text/javascript" src="background.js"></script> 
</html> 

background.js:

chrome.browserAction.onClicked.addListener(function(tab) { 
    chrome.tabs.captureVisibleTab(null, function(img) { 
    var xhr = new XMLHttpRequest(), formData = new FormData(); 
    formData.append("img", img); 
    xhr.open("POST", "http://myserver.com/submitImage", true); 
    xhr.send(formData); 
    }); 
}); 

此擴展添加Chrome中的瀏覽器操作按鈕。當用戶點擊按鈕時,包含base64編碼圖像的POST請求(發送到FormData object)被髮送到http://myserver.com/submitImage

此代碼不顯示如何管理錯誤和服務器響應。

+0

感謝您的建議,我會嘗試這個例子 – 2012-01-04 16:33:33

+1

oldschool代碼我喜歡它 – neaumusic 2014-09-09 02:04:00

相關問題