您好,登錄后才能下訂單哦!
這篇文章主要介紹了怎么創建離線web應用程序實現離線訪問的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇怎么創建離線web應用程序實現離線訪問文章都會有所收獲,下面我們一起來看看吧。
1.定義Manifest
我們使用manifest列舉出需要離線時訪問的資源,他本身是一個文本類型的文件,第一行經常是CACHE MANIFEST,然后列舉我們需要的資源,每行一個。文件沒有固定的命名規則,后綴名也沒有要求,唯一的要求就是需要把后綴名在服務器端以text/cache-manifest的MIME類型定義。
如果是iis 7服務器,按照下面的步驟:
1.比如后綴名為.appcache,打開iis7,選擇根節點(這樣所有站點都會繼承配置,也可以針對單個站點配置);
2.雙擊右側的MIME類型;
3.點擊右鍵添加MIME類型,這樣就完成了配置。
服務器配置完畢,添加manifest文件。
復制代碼 代碼如下:
CACHE MANIFEST
manifestFile.html
img/1.jpg
img/2.jpg
img/3.jpg
然后我們看下面的例子。
復制代碼 代碼如下:
<!DOCTYPE HTML>
<html manifest="manifest.appcache">
<head>
<title>Example</title>
<style>
img
{
border: medium double black;
padding: 5px;
margin: 5px;
}
</style>
</head>
<body>
<img alt="" id="imgtarget" src="img/1.jpg" />
<div>
<button id="1">car1</button>
<button id="2">car2</button>
<button id="3">car3</button>
</div>
<script>
var buttons = document.getElementsByTagName('button');
for (var i = 0; i < buttons.length; i++) {
buttons[i].onclick = handleButtonPress;
}
function handleButtonPress(e) {
document.getElementById('imgtarget').src = 'img/' + e.target.id + '.jpg';
}
</script>
</body>
</html>
程序運行,根據瀏覽器的不同,有的瀏覽器會詢問你,是否允許保存離線數據到本地,有的不會。這樣一個簡單的離線應用就創建好了。
2.疑惑解答
我在學習這部分知識的時候也遇到些問題和疑惑,如:
1.為什么我直接運行vs2010(我的開發環境),離線應用程序不能正確運行?
2.我怎么才知道離線應用是否創建成功?
3.我怎么才知道當前應用是否是離線狀態?
4.暫停了iis服務后應該就處于離線狀態了吧,為什么我重新刷新頁面要報404錯誤?
現在我就這些我遇到的問題進行解答。
2.1.首先解釋第一個疑問。關于這個問題,關鍵點在于你的應用web配置項是如何配置的,如果使用的是vs開發服務器的形式,那么我們就沒有辦法為它設置MIME類型,所以這種情況下我們的離線應用時沒辦法用的。剩下的兩種web配置方式,只要你正確的按照,我上面介紹的配置MIME類型的方法配置了iis服務器,你的離線應用就能正確運行。
2.2.下面解釋第二個問題,這里需要借助chrome瀏覽器的調試工具,使用chrome瀏覽器打開我們的web程序,按F12,切換到Resources選項卡。只要Application Cache下面有我們配置的信息,能找到緩存的文件,就證明我們的離線應用創建成功了。
2.3.還是使用chrome的調試工具,還是在Resources選項卡,注意到紅線圈住的地方沒,Online表示在線。
拔掉網線,顯示Offline,表示離線,這時離線應用的效果就能表現出來了。
2.4.關于最后一個問題,還是要借助chrome瀏覽器的調試工具,當我們暫停iis服務的時候,我們看下Resources選項卡的顯示,仍然是Online,只是后面從IDLE變成了OBSOLETE。這也就解釋了為什么暫停本地iis,離線應用的離線效果顯示不出來。
關于“怎么創建離線web應用程序實現離線訪問”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“怎么創建離線web應用程序實現離線訪問”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。