通过Google Chrome扩展程序访问本地文件?

时间:2011-10-01 17:32:47

标签: google-chrome google-chrome-extension local-storage

我需要从本地文件中将名称列表加载到我的Google Chrome扩展程序中, 如何才能做到这一点?如果文件附带扩展名本身怎么办?

2 个答案:

答案 0 :(得分:5)

如果您的扩展程序附带此文件,则只需在背景页面中加载XMLHttpRequest(使用相对路径,/为扩展根文件夹)。

您还可以将文件设为javascript(var config=[...]),然后将<script>加载到后台页面。

答案 1 :(得分:0)

说您的json文件是以下文件夹中的names.json

-- manifest.json
-- config
   |-- names.json

manifest.json 中添加资源的路径

"web_accessible_resources": [
        "config/names.json"
    ]

使用 fectch() API访问资源

const url = chrome.runtime.getURL('./config/names.json');

fetch(url)
  .then(
    function(response) {
      if (response.status !== 200) {
        console.log('Looks like there was a problem. Status Code: ' +
          response.status);
        return;
      }

      // Examine the text in the response
      response.json().then(function(data) {
        console.log(data);
      });
    }
  )
  .catch(function(err) {
    console.log('Fetch Error :-S', err);
  });