2013-09-21 60 views
1

我有一個Chrome擴展,我開發它可以將HTML內容讀取並解析爲CSV文件。 這部分工作很好,用戶可以下載文件。Chrome擴展程序 - 使用託管PHP腳本處理輸出

我想在這一點上做的,是找到一種方法,該數據直接發送到MySQL數據庫。

我知道鉻擴展無法運行PHP(顯然)。但是,我可以訪問託管的Web服務器,我可以上傳自定義PHP腳本。

有什麼辦法可以直接把我的分析數據,以託管的PHP腳本,將處理數據,然後將數據發送到MySQL數據庫在同一臺服務器上?

一切迄今我已經研究了導致「Chrome瀏覽器擴展不能運行PHP腳本」。 。 。

感謝您的幫助!

編輯:一個選項我想的是注入HTML隱藏字段與我的數據的值,然後使用JavaScript把數據上傳到PHP URL。 。 。 。這是一個選擇嗎? Chrome擴展可以注入隱藏的字段嗎?

回答

3

您絕對可以通過chrome擴展向服務器發送POST方法HTTP請求。它不需要任何破解來實現這一點。對於原生JavaScript,使用'POST'方法來訪問XMLHttpRequest或像jQuery這樣的庫只需要提出$.post請求。

幾件事情:

你會想使用HTTPS,這樣就得到一個SSL證書爲您的服務器/域。如果您正在解析HTTPS保護頁面上的任何類型的網站內容,並將其以明文形式發送到您自己的服務器上,那麼您正在做一件非常糟糕的事情。不要那樣做。

確保你告訴你的用戶,你正在做這個。一些/大多數人可能不希望這樣。

使用內容腳本從DOM獲取內容。使用postMessage消息傳遞將它傳遞給您的擴展後臺腳本。

從後臺腳本發出POST請求。

您將需要更新您的manifest.json有權限要注入內容到URL和權限,以使POST請求到服務器的域。用戶將不得不查看和批准這些權限,但他們不會知道你在做什麼,所以一定要告訴他們。

+1

您好,感謝您的提供!正在解析的數據不是很敏感,但是感謝關於安全性的建議!擴展只是一個學校項目,所以唯一的用戶將是我和我的團隊成員。 – Evidencex

+0

那麼?你解決了你的問題嗎?請與我分享您的解決方案.. –