Google Gears 体验(2):本机 web 服务器
生活随笔
收集整理的這篇文章主要介紹了
Google Gears 体验(2):本机 web 服务器
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
GoogleGears 的第二個官方例子:
http://code.google.com/apis/gears/samples/hello_world_resourcestore.html
這個例子的內(nèi)容是演示如何在本機保存網(wǎng)上的資源,以便開發(fā)離線應用。
要注意的是這個離線資源是和瀏覽器的緩存無關的,可以拔掉網(wǎng)線,刪除瀏覽器緩存,這時仍然可以通過常規(guī) URL (比如:http://code.google.com/apis/gears/samples/hello_world_resourcestore.html)訪問頁面的功能!
該應用的初始化階段,需要用 js 先創(chuàng)建本地服務器對象:
var?localServer?=
????????google.gears.factory.create('beta.localserver',?'1.0');
例子界面中的幾個按鈕功能的分析如下:
1. CreateStore:??? 創(chuàng)建一個 Store。Store 之于 LocalServer,類似于數(shù)據(jù)庫的 Table 之于 DataBase 的關系。
var?STORE_NAME?=?'helloworld-store';
//?如果該名稱的?Store?已經(jīng)存在,則會打開已有的。
var?store?=?localServer.createStore(STORE_NAME);
2. Capture: 捕獲需要的資源到本地。
//?先在一個數(shù)組里定義好需要獲取到本機的資源名稱
var?filesToCapture?=?[
??location.pathname,??//?代表當前頁面的?url
??'sample.js',
??'sample.css',
??'gears_init.js'
];
//?捕獲文件到本地,允許指定一個回調(diào)函數(shù)進行自定義的處理
store.capture(filesToCapture,?captureCallback);
//?回調(diào)函數(shù)。這里僅僅做一下進展狀態(tài)的匯報工作
function?captureCallback(url,?success,?captureId)?{
??addStatus(url?+?'?captured?'?+?(success???'succeeded'?:?'failed'));
}
3. UnCapture: 取消捕獲
for?(var?i?=?0;?i?<?filesToCapture.length;?i++)?{
????store.remove(filesToCapture[i]);
}
4. RemoveStore: 刪除 Store
//?刪除?Store?之前需要首先用?openStore?方法測試其是否存在
if?(localServer.openStore(STORE_NAME))?{
????localServer.removeStore(STORE_NAME);
????//?釋放?store?占用的指針,標志為可垃圾回收資源
????store?=?null;
}
這個例子非常簡單,沒有太多可說的。更多的就要去參考在線的 API 文檔了。地址在:
http://code.google.com/apis/gears/api_localserver.html
與50位技術專家面對面20年技術見證,附贈技術全景圖
http://code.google.com/apis/gears/samples/hello_world_resourcestore.html
這個例子的內(nèi)容是演示如何在本機保存網(wǎng)上的資源,以便開發(fā)離線應用。
要注意的是這個離線資源是和瀏覽器的緩存無關的,可以拔掉網(wǎng)線,刪除瀏覽器緩存,這時仍然可以通過常規(guī) URL (比如:http://code.google.com/apis/gears/samples/hello_world_resourcestore.html)訪問頁面的功能!
該應用的初始化階段,需要用 js 先創(chuàng)建本地服務器對象:
var?localServer?=
????????google.gears.factory.create('beta.localserver',?'1.0');
例子界面中的幾個按鈕功能的分析如下:
1. CreateStore:??? 創(chuàng)建一個 Store。Store 之于 LocalServer,類似于數(shù)據(jù)庫的 Table 之于 DataBase 的關系。
var?STORE_NAME?=?'helloworld-store';
//?如果該名稱的?Store?已經(jīng)存在,則會打開已有的。
var?store?=?localServer.createStore(STORE_NAME);
2. Capture: 捕獲需要的資源到本地。
//?先在一個數(shù)組里定義好需要獲取到本機的資源名稱
var?filesToCapture?=?[
??location.pathname,??//?代表當前頁面的?url
??'sample.js',
??'sample.css',
??'gears_init.js'
];
//?捕獲文件到本地,允許指定一個回調(diào)函數(shù)進行自定義的處理
store.capture(filesToCapture,?captureCallback);
//?回調(diào)函數(shù)。這里僅僅做一下進展狀態(tài)的匯報工作
function?captureCallback(url,?success,?captureId)?{
??addStatus(url?+?'?captured?'?+?(success???'succeeded'?:?'failed'));
}
3. UnCapture: 取消捕獲
for?(var?i?=?0;?i?<?filesToCapture.length;?i++)?{
????store.remove(filesToCapture[i]);
}
4. RemoveStore: 刪除 Store
//?刪除?Store?之前需要首先用?openStore?方法測試其是否存在
if?(localServer.openStore(STORE_NAME))?{
????localServer.removeStore(STORE_NAME);
????//?釋放?store?占用的指針,標志為可垃圾回收資源
????store?=?null;
}
這個例子非常簡單,沒有太多可說的。更多的就要去參考在線的 API 文檔了。地址在:
http://code.google.com/apis/gears/api_localserver.html
與50位技術專家面對面20年技術見證,附贈技術全景圖
總結(jié)
以上是生活随笔為你收集整理的Google Gears 体验(2):本机 web 服务器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux学习笔记之安装mplayer过
- 下一篇: 微软 Mozilla高管评Safari