Jos*_*ung 24 json google-chrome-extension
继续收到此错误:"Manifest无效JSON.行:1,列:1,意外令牌." 我不明白我的代码是什么问题?这是我到目前为止:
{
"manifest_version": 2,
"name": "extension",
"version": "1.0",
"description": "My first Chrome extension.",
"browser_action": {
"default_icon": "icon.jpg",
"popup": "popup.html"
}
}
Run Code Online (Sandbox Code Playgroud)
ANI*_*TEL 11
我添加了 crossorigin 属性,它起作用了。
<link rel="manifest" crossorigin="use-credentials" href="%PUBLIC_URL%/manifest.json" />
Run Code Online (Sandbox Code Playgroud)
Sno*_*ogg 10
我在Visual Studio 2010中使用Build Action:None设置了manifest.json文件属性.
在Visual Studio中将内容更改为内容可确保在部署时传输文件.
也许你的问题类似.
编辑
鉴于我的downvote我认为我应该扩展并说我的观点是,鉴于在第1行,第1列有有效的json,你更有可能得到404 http响应而不是返回的实际json文件.
所以也许文件不在正确的位置或服务器没有权限或其他什么,但上面是我的错误.不可否认,它可能过于具体到我的错误,而不是你的错.
但一般情况仍然存在,更可能是因为Web服务器返回json文件的http响应,检查浏览器中网络日志中的响应.
在“网络”选项卡中检查manifest.json的Content-Type。这需要是application / json而不是text / html。
如果内容类型错误,则可能需要配置Web服务器的设置以正确提供json文件。
就我而言,我必须将其添加到启用了Nginx 网站的文件中:
位置〜*。(jpg | jpeg | gif | png | css | js | ico | xml | svg | json)$
由于扩展名(MIME 类型),浏览器无法找到清单。在 Chrome DevTools > Network > Headers > Content-Type 中,清单的内容类型必须与实际清单文件扩展名(.json或.webmanifest)匹配。要解决 404 错误,您需要在以下位置声明文件类型web.config:
<staticContent>
<mimeMap fileExtension=".json" mimeType="application/json" />
<mimeMap fileExtension=".webmanifest" mimeType="application/manifest+json" />
</staticContent>
Run Code Online (Sandbox Code Playgroud)
小智 4
看来您对browser_action键使用了错误的值。要指定弹出模板,您必须使用default_popup。它应该是 :
{
"manifest_version": 2,
"name": "extension",
"version": "1.0",
"description": "My first Chrome extension.",
"browser_action": {
"default_icon": "icon.jpg",
"default_popup": "popup.html"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42959 次 |
| 最近记录: |