Google chrome extension 在整个生产和销售过程中处理URL;开发环境

Google chrome extension 在整个生产和销售过程中处理URL;开发环境,google-chrome-extension,Google Chrome Extension,我已经构建了一个小扩展,在那里我必须在许多地方硬编码URL(比如manifest.json等)。但是我希望URL的域在开发环境和生产环境之间有所不同。想知道什么是正确的做法。您可以尝试创建一个JSON文件,并以以下方式在其中包含不同的键、值对: "development": { "oauth-code": "xyz" } "production": { "oauth-code": "xyz" } var settings = [code to load JSON file,

我已经构建了一个小扩展,在那里我必须在许多地方硬编码URL(比如manifest.json等)。但是我希望URL的域在开发环境和生产环境之间有所不同。想知道什么是正确的做法。

您可以尝试创建一个JSON文件,并以以下方式在其中包含不同的键、值对:

"development": {
    "oauth-code": "xyz"
}

"production": {
    "oauth-code": "xyz"
}
var settings = [code to load JSON file, depending upon the language that you choose]
console.log(settings['production'].oauth-code);
console.log(settings['development'].oauth-code);
然后将settings.json加载到主脚本中,并根据您以以下方式选择的环境动态访问设置:

"development": {
    "oauth-code": "xyz"
}

"production": {
    "oauth-code": "xyz"
}
var settings = [code to load JSON file, depending upon the language that you choose]
console.log(settings['production'].oauth-code);
console.log(settings['development'].oauth-code);

它将帮助您更轻松地根据环境获取自定义设置,您也可以尝试在JS文件中使用具有相同属性的应用程序对象,其方式几乎相同,但建议将设置和主逻辑彼此分离。

您可以尝试创建JSON文件并使用不同的密钥,以以下方式在其中创建值对:

"development": {
    "oauth-code": "xyz"
}

"production": {
    "oauth-code": "xyz"
}
var settings = [code to load JSON file, depending upon the language that you choose]
console.log(settings['production'].oauth-code);
console.log(settings['development'].oauth-code);
然后将settings.json加载到主脚本中,并根据您以以下方式选择的环境动态访问设置:

"development": {
    "oauth-code": "xyz"
}

"production": {
    "oauth-code": "xyz"
}
var settings = [code to load JSON file, depending upon the language that you choose]
console.log(settings['production'].oauth-code);
console.log(settings['development'].oauth-code);

它将帮助您更轻松地根据环境获得自定义设置,您也可以尝试在JS文件中使用具有相同属性的应用程序对象,其方式几乎相同,尽管建议将设置和主逻辑彼此分开。

如果您知道生产扩展url,那么您可以看到扩展id。假设扩展url是这样的
var chromeruntimeid='cniohcjecdcdchmlofniddfookbpb'

  if(chrome.runtime.id==chromeruntimeid){
    console.log('production');
  }else{
    console.log('development');
  }

如果您知道您的生产扩展url,那么您可以看到扩展id。假设扩展url是这样的
var chromeruntimeid='cniohcjecdcdcdchgmlofniddfookbpb'

  if(chrome.runtime.id==chromeruntimeid){
    console.log('production');
  }else{
    console.log('development');
  }

谢谢你,科迪。但是如何访问manifest.json中的设置呢?您必须使用特定于您的开发语言的代码来加载json文件,该文件将返回json对象。我们需要将manifest.json上载到chrome store。他们将自己解析json文件,以了解chrome扩展包的细节。但是如何访问manifest.json中的设置呢?您必须使用特定于您的开发语言的代码来加载json文件,该文件将返回json对象。我们需要将manifest.json上载到chrome store。他们将自己解析json文件以了解chrome扩展包的细节