[發明專利]在web頁面上實現本地操作的方法和裝置有效
| 申請號: | 201310011380.4 | 申請日: | 2013-01-11 |
| 公開(公告)號: | CN103927151B | 公開(公告)日: | 2018-04-27 |
| 發明(設計)人: | 莫洪靈;李京;徐晶;馮榮峰 | 申請(專利權)人: | 聯想(北京)有限公司 |
| 主分類號: | G06F9/451 | 分類號: | G06F9/451 |
| 代理公司: | 北京三高永信知識產權代理有限責任公司11138 | 代理人: | 張耀光 |
| 地址: | 100085*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | web 頁面 實現 本地 操作 方法 裝置 | ||
技術領域
本發明涉及web技術領域,特別涉及一種在web頁面上實現本地操作的方法和裝置。
背景技術
JavaScript是一種基于對象和事件驅動并具有相對安全性的客戶端腳本語言,廣泛應用于客戶端的Web開發。JavaScript常用來給超文本標記語言(英文:HyperText Markup Language,縮寫:HTML)網頁添加動態功能,比如響應用戶的各種操作等等,JavaScript也可以用于其他場合,如服務器端編程等等。
JavaScript引擎是能夠閱讀并執行JavaScript源代碼的解釋器,現多用于網頁瀏覽器中,如Apple Safari4的Nitro,Chrome瀏覽器的V8和Mozilla Firefox3.5的TraceMonkey等等。
在Chrome瀏覽器中,由Javascript引擎V8負責解析和運行Javascript代碼。其中,Javascript引擎V8運行在Chrome瀏覽器的渲染(英文:render)進程下,出于安全的考慮,通常將該render進程置入沙箱之中,以限制Javascript代碼只能在沙箱中運行,從而提高瀏覽器的安全性。
但是,由于Javascript代碼只能在沙箱中運行,因此,web頁面上的javascript代碼執行本地調用的能力非常微弱,目前還無法實現對本地文件的訪問。
發明內容
為了提高javascript代碼的本地調用能力,本發明提供了一種在web頁面上實現本地操作的方法和裝置。所述技術方案如下:
一方面,本發明提供了一種在web頁面上實現本地操作的方法,所述方法應用于一電子設備中,所述電子設備包括一顯示單元以及所述電子設備具有超文本標記語言HTML運行環境,所述方法包括:
在所述HTML運行環境中通過地址信息加載web頁面;
在加載所述web頁面的過程中,獲得用于表征所述電子設備的本地資源的情況的標識信息;
獲得操作請求,所述操作請求用于表征操作所述本地資源的第一資源的請求;
根據所述操作請求,以所述第一資源響應所述操作請求;
在所述顯示單元上顯示所述第一資源響應所述操作請求的響應結果。
其中,根據所述操作請求,以所述第一資源響應所述操作請求,包括:
當javascript引擎在渲染進程中解析到所述操作請求對應的第一接口時,所述javascript引擎用于解釋javascript腳本,所述第一接口為基于javascript自定義的接口,用于在web頁面上操作所述第一資源,且所述javascript引擎中注冊有所述第一接口,則所述javascript引擎根據所述第一接口向主進程發送進程間通信IPC消息,請求在所述web頁面上操作所述本地的第一資源;
在所述主進程中,根據收到的所述IPC消息調用本地接口在所述web頁面上操作所述本地的第一資源;
其中,所述渲染進程處于保護狀態,不具有調用本地接口的權限,所述主進程處于非保護狀態,具有調用本地接口的權限。
其中,所述javascript引擎根據所述第一接口向主進程發送IPC消息,請求在所述web頁面上操作所述本地的第一資源,包括:
所述javascript引擎將所述第一接口映射為所述渲染進程能夠運行的本地函數;
運行所述本地函數,向所述主進程發送所述IPC消息,請求在所述web頁面上操作所述本地的第一資源。
其中,所述方法還包括:
所述javascript引擎根據所述第一接口向主進程發送進程間通信IPC消息之前,根據預設的白名單判斷所述web頁面是否具有操作本地資源的權限;
如果確定所述web頁面具有操作本地資源的權限,則執行所述javascript引擎根據所述第一接口向主進程發送所述IPC消息的步驟。
另一方面,本發明還提供了一種在web頁面上實現本地操作的方法,所述方法應用于一電子設備中,所述電子設備具有超文本標記語言HTML運行環境,所述方法包括:
當在所述HTML運行環境中打開一個web頁面時,javascript引擎在渲染進程中對所述web頁面進行解析;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于聯想(北京)有限公司,未經聯想(北京)有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310011380.4/2.html,轉載請聲明來源鉆瓜專利網。





