<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # NPAPI 插件 使用HTML和JavaScript開發新擴展是十分容易的事情,不過如果你想在擴展中重用已經開發完成的代碼和功能,你可以通過使用NPAPI插件到達目的。NPAPI插件使JavaScript代碼能夠調用本地二進制代碼。 ## 警告 **NPAPI 是重型武器,當別的方法無法到達你的目的時,才建議使用。** 運行在NPAPI插件中的代碼擁有當前用戶的全部權限,不能利用Google Chrome 的沙箱技術和其他安全防護技術。 在處理不可信任的輸入, 如[content scripts](content_scripts.html#security-considerations)和XMLHttpRequest 時,你必須格外小心。 鑒于使用NPAPI可能引入的風險,使用了NPAPI的擴展在提交給[web store](https://chrome.google.com/webstore)或者[extension gallery](https://chrome.google.com/extensions) 時要經過人工審核。 ## 更多信息 如何開發一個NPAPI插件超出了本文的范疇,具體請參看:[Mozilla's NPAPI plugin reference](https://developer.mozilla.org/en/Plugins)以獲得更多幫助。 如果你已經擁有一個NPAPI插件,通過如下步驟,你的擴展將能夠調用它。 1. 在你擴展的manifest.json文件中加入一個節,描述如何找到你的插件,以及其他一些信息,: ``` { "name": "My extension", ... **"plugins": [ { "path": "content_plugin.dll", "public": true }, { "path": "extension_plugin.dll" } ]**, ... } ``` "path" 屬性用于描述如何找到你的插件,路徑是相對于manifest文件位置的。 "public" 屬性指明是否允許普通頁面加載你的插件,默認是false,也就是只有你的擴展才能加載這個插件。 2. 創建一個HTML文件,mime-type為:application/x-my-extension" ,用于加載你的插件。 ``` &lt;embed type="application/x-my-extension" id="pluginId"&gt; &lt;script&gt; var plugin = document.getElementById("pluginId"); var result = plugin.myPluginMethod(); // call a method in your plugin console.log("my plugin returned: " + result); &lt;/script&gt; ``` 這個頁面可以被后臺頁面包含,或者任何你擴展會用到的其他頁面。如果你的插件的 "public" 屬性是true,,你可以通過腳本在頁面中直接使用它。 ## 安全注意事項 在你的擴展中包含一個NPAPI插件是一件危險的事情。因為NPAPI插件擁有訪問你本地機器的完全權限而不受控制。如果你的插件不夠健壯,包含漏洞,黑客可以通過溢出攻擊利用漏洞來安裝惡意軟件到用戶的機器。 有鑒于此,請盡可能的避免在擴展中使用NPAPI插件。 將NPAPI的 "public" 屬性設置為true,也會增加你擴展受到攻擊的可能性。因為這樣一來,插件直接暴露給了頁面內容,惡意網站能通過頁面直接操縱你的插件。有鑒于此,盡量避免將"public"屬性設置為true。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看