Chrome 扩展 - 通知只在 apache 中工作
Chrome extension - Notification just work in apache
我已经配置了我的 chrome 扩展来发送这样的通知:
我有一个按钮,它有一个调用 createNotification 的事件。但是,如果我是 运行 apache 上的扩展程序,该按钮只会发送通知。
我做错了什么?
等于那个例子http://jsbin.com/ziwod/1/edit?html,js,output
对我来说,当我点击 "Run with JS".
时,这个例子就起作用了
这是我的清单
{
"name": "EXTENSION EXAMPLE",
"version": "0.0.1",
"manifest_version": 2,
"description" : "This extension is...",
"icons": { "16": "icons/16x16.png", "48": "icons/48x48.png", "128": "icons/128x128.png" },
"omnibox": { "keyword" : "example" },
"browser_action": {
"default_icon": {
"19": "icons/19x19.png",
"38": "icons/38x38.png"
},
"default_title": "Launcher",
"default_popup": "browseraction/popup.html"
},
"background": {
"scripts": ["background.js"],
"persistent": false
},
"permissions" : ["notifications"],
"options_page" : "notification.html",
"chrome_url_overrides" : {
"newtab": "newtab/newtab.html"
},
"devtools_page": "devtools/devtools.html"
}
这是我的notification.htmlhttp://codepen.io/anon/pen/VYWQwB
从您的 html 文件和 "manifest_version": 2
的清单文件可以看出 Content Security Policy 默认处于启用状态。并且 Chrome 开发人员对此选择严格并始终禁止内联 JavaScript 代码 - 仅允许执行放置在外部 JavaScript 文件中的代码(以防止扩展中的跨站点脚本漏洞).所以 <button onclick="notifyMe()">
在你的 html 文件中是不允许的。 onclick
属性是内联脚本。您应该改为分配 ID 属性:<button id="button">
。
我已经配置了我的 chrome 扩展来发送这样的通知:
我有一个按钮,它有一个调用 createNotification 的事件。但是,如果我是 运行 apache 上的扩展程序,该按钮只会发送通知。
我做错了什么?
等于那个例子http://jsbin.com/ziwod/1/edit?html,js,output 对我来说,当我点击 "Run with JS".
时,这个例子就起作用了这是我的清单
{
"name": "EXTENSION EXAMPLE",
"version": "0.0.1",
"manifest_version": 2,
"description" : "This extension is...",
"icons": { "16": "icons/16x16.png", "48": "icons/48x48.png", "128": "icons/128x128.png" },
"omnibox": { "keyword" : "example" },
"browser_action": {
"default_icon": {
"19": "icons/19x19.png",
"38": "icons/38x38.png"
},
"default_title": "Launcher",
"default_popup": "browseraction/popup.html"
},
"background": {
"scripts": ["background.js"],
"persistent": false
},
"permissions" : ["notifications"],
"options_page" : "notification.html",
"chrome_url_overrides" : {
"newtab": "newtab/newtab.html"
},
"devtools_page": "devtools/devtools.html"
}
这是我的notification.htmlhttp://codepen.io/anon/pen/VYWQwB
从您的 html 文件和 "manifest_version": 2
的清单文件可以看出 Content Security Policy 默认处于启用状态。并且 Chrome 开发人员对此选择严格并始终禁止内联 JavaScript 代码 - 仅允许执行放置在外部 JavaScript 文件中的代码(以防止扩展中的跨站点脚本漏洞).所以 <button onclick="notifyMe()">
在你的 html 文件中是不允许的。 onclick
属性是内联脚本。您应该改为分配 ID 属性:<button id="button">
。