2012-02-09 54 views
0

我創建google chome擴展和一切都很好,但我需要知道如何更自由地使用ajax請求,它應該在同一個域(請求)或擴展目錄的文件中。在Google擴展中使用ajax請求 - 基本知識?性能

例如,我曾嘗試:

var heroPage = ""; 
$.get('/hero.php', function(data) { 
    heroPage = data; 
}); 

var townPage = ""; 
$.get('/town.php', function(data) { 
    townPage = data; 
}); 

然後我嘗試在鼠標懸停監聽器使用數據,以及第一個作品每一秒的時間,但是第二不能在所有的工作...它可能是一些有限制的東西或其他。

有沒有辦法使用例如PHP擴展名(在擴展目錄中)請求的PHP文件,或使用某種不同的請求或以不同的方式? 我需要在頁面加載或甚至接近至少5個請求,並存儲一些數據在本地存儲或等,只是不能使它的工作...

謝謝你的幫助!答案將被選中幫助積分的人;)

基本上我需要的是從網頁html獲取信息並將其存儲在本地存儲中,但幾乎在同一時間從幾頁中獲取。 ?

回答其中一個答案,也許更清楚的解釋: 嘿謝謝你的回答,但它不是我的意思,也許我沒有解釋清楚。我的意思是說:我在使用http請求發送的鏈接時遇到問題(因爲我現在這樣做),它只能在一段時間內只有一個請求,等等,我需要從五個頁面中獲取html。第二件事我明白,PHP需要在服務器上與Apache等我是思考克服這個問題,也許如果我將PHP文件存儲在我的服務器上,並提出一個請求,並且該PHP文件會使更多的http請求到達我需要的地方,並且會將一個數據中的所有內容返回給js文件。我只需要一種方法,幾乎​​可以在同一時間將五個www html網站添加到我的擴展程序中的變量中,那麼執行此操作的更好方法是什麼?

someone?\?

+0

您正在向您自己的Chrome擴展程序發出AJAX請求?爲什麼不直接獲取數據,如果它本地可用? – cheeken 2012-02-09 16:24:58

+0

不,我正在向web上的相同頁面發出ajax請求,但我想也許只是將請求調用到您自己的文件並從該文件通過php或其他方式向Web請求調用請求會更容易。 – XFaktor 2012-02-09 16:49:53

+0

基本上我需要的是從網頁html獲取信息並將其存儲在本地存儲中,但幾乎在同一時間從幾頁中獲取。 – XFaktor 2012-02-09 16:50:41

回答

0

首先,讓我們澄清一兩件事。從萬維網獲取的文件是從通常運行Apache的服務器中獲取的,並附帶一些用於執行PHP等內容的附加組件。您的Chrome擴展程序代碼所運行的環境不是這樣,所以PHP不會運行;它會像文件中的任何其他文本一樣被對待。唯一讓你的擴展與從file://協議加載的純HTML文件不同的東西是manifest.json文件和一些特殊的權限。

現在對你的問題。這並不是很清楚,但聽起來您正嘗試使用PHP來解決瀏覽器不允許您直接使用Ajax在另一個域上獲取文件的事實。但Chrome 實際上允許Chrome擴展程序執行此操作,如果它請求此權限。前往the Cross-Origin XMLHTTPRequest page並向下滾動至「請求跨源許可」以獲取更多信息。

+0

嘿謝謝你的回答,但這不是我的意思,也許我沒有清楚地解釋它。我的意思是說:我在使用http請求發送的鏈接時遇到問題(因爲我現在這樣做),它只能在一段時間內只有一個請求,等等,我需要從五個頁面中獲取html。第二件事我明白,PHP需要在服務器上與Apache等 – XFaktor 2012-02-10 08:12:08

+0

我是jsut考慮克服這個問題,也許如果我將PHP文件存儲在我的服務器上,並提出一個請求,並且該PHP文件會使更多的http請求到達我需要的位置,並且它會將一個數據中的任何內容返回給js文件。我只需要一種方法,幾乎​​可以在同一時間將五個www html網站添加到我的擴展程序中的變量中,那麼執行此操作的更好方法是什麼? – XFaktor 2012-02-10 08:12:50