google-chrome-extension - 访问 Chrome Web Store 许可 API 时出现后端错误 500
问题描述
我正在尝试制作一个 chrome 扩展,它将提供免费试用。按照此处的文档,首先要做的是启用 Chrome Identity API。据我所知,没有这样的事情......
无论如何...我已经完成了所有其他步骤,并以 500 错误结束。
这是我所做的一部分。当然,我更改了所有 ID、键、令牌等的值。
清单.json
{
"name": "The name of my app",
"version": "1.0.9",
"key": "my_very_long_key",
"description": "A description",
"manifest_version": 2,
"permissions": [ "activeTab", "storage", "declarativeContent", "identity", "https://www.googleapis.com/" ],
"oauth2": {
"client_id": "the_client_id_i_setup_in_Credentials_oauth2_section.apps.googleusercontent.com",
"scopes": [
"https://www.googleapis.com/auth/chromewebstore.readonly"
]
},
// other stuff...
代码
chrome.identity.getAuthToken({
'interactive': true
}, (token) => {
console.log("Token: %o", token);
console.log("chrome.runtime.id: %o", chrome.runtime.id);
var CWS_LICENSE_API_URL = 'https://www.googleapis.com/chromewebstore/v1.1/userlicenses/';
var req = new XMLHttpRequest();
req.open('GET', CWS_LICENSE_API_URL + chrome.runtime.id);
req.setRequestHeader('Authorization', 'Bearer ' + token);
req.setRequestHeader('Content-Type', 'application/json');
req.onreadystatechange = () => {
if (req.readyState == 4) {
var license = JSON.parse(req.responseText);
console.log(license);
}
}
req.send();
});
这是一个输出示例。
Token: "ya29.GlzqBp1FaFegsgm.oihohjbrbznghdfgmgighnzxfvxz3ve5G8GQ4VxZ653FqBa8aqq-JXil-VS5IGeknneZ6KnKbyknw-gXw"
chrome.runtime.id: "asdflhlkrfhuilerdfb"
Object
error:
code: 500
errors: Array(1)
0:
domain: "global"
message: "Backend Error"
reason: "backendError"
__proto__: Object
length: 1
__proto__: Array(0)
message: "Backend Error"
__proto__: Object
__proto__: Object
所以我能够获得访问令牌,但是用它调用 API 似乎没有任何结果。
解决方案
重新打开的错误:https ://issuetracker.google.com/issues/140188619
请在 issuetracker.google.com 上加注星标,如果您遇到同样的问题来加快 Google 速度)
更新:
问题已由 Google 解决! https://bugs.chromium.org/p/chromium/issues/detail?id=940478#c18
推荐阅读
- c - 方法调用问题,尤其是从 C 调用程序集
- javascript - 如何将我的图片和内容对齐在一起?一切都在不断分离
- http - AkkaHttp 背压何时启动?
- javascript - 下拉菜单保存重新加载的选择
- postgresql - AWS EC2 免费套餐实例经常自动停止
- algorithm - 如何有效地计算奇怪的数字
- python - 未找到任何测试(doctest)
- c++ - 我想以特定方式在 C++ 中声明一个类似金字塔的结构,但不能
- javascript - jQuery 中 document.getElementsByTagName("textarea")[0] 的等价物是什么
- android - 搜索视图在我的包含 RecyclerView 的片段中没有给出任何结果。单击搜索图标后,屏幕为空白