2012-07-19 26 views
0

我顯然不能使用服務器端語言,這只是我的桌面上的一個頁面。客戶端在本地機器上包含

我嘗試使用AJAX使用jQuery,但我得到了以下錯誤消息

Sorry but there was an error: 0 [Exception... "Access to restricted URI denied" code: "1012" nsresult: "0x805303f4 (NS_ERROR_DOM_BAD_URI)" location: "https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js Line: 4"]

它有,因爲它是在本地或託管的東西的瀏覽器不加載腳本做。那麼有沒有什麼辦法可以在本地機器上包含文件而無需安裝網絡服務器軟件?

+3

你可以發佈你的代碼,所以我們可以看到你在做什麼? – Brandon 2012-07-19 15:16:42

+0

AJAX不適用於打開本地文件並閱讀它們。所有的ajax調用都是將一些數據發送到某個位置,JavaScript假定接收方知道如何處理它。你在做什麼,如果我沒有弄錯,就像走到一扇門,喊着'芝麻打開你',在童話故事裏工作,但在現實世界中,你需要一個門衛:) – 2012-07-19 15:43:35

+0

我錯了。 @flem有正確的答案。 – SomeKittens 2012-07-19 17:23:55

回答

1

這是一個XSS錯誤。您無法向第三方網站發送http請求(網址不在您的域名上)。您需要使用代理向頁面發出請求(或讓所有者允許您的站點發出XSS請求)。

0

我寫的一個庫的無恥插件解決了類似的問題。我們希望能夠爲後端實現拼接HTML文件,而無需實現服務器端包含的本地HTTP服務器的開銷。該庫適用於HTTP或本地文件系統。但是,正如存儲庫自述文件所述,您必須爲您的Chrome運行時啓用--allow-file-access-from-files標誌。其他瀏覽器可以使用。

https://github.com/LexmarkWeb/csi.js

<div data-include="/path/to/include.html"></div> 

上面將採取的/path/to/include.html內容,並用它取代div

相關問題