我做了一个小扩展,更改默认搜索引擎并将不跟踪功能设置为开。扩展程序有效,但它会导致我的网站(也可能是其他人)出现问题。
在我的网站上,我有一个设置页面,可以更改一些内容,例如文本颜色,语言。当我打开扩展程序时,设置不再有效。按钮不保存我的选择。
编辑:我注意到问题来自“chrome_settings_overrides”部分。如果我把它取下来按钮再次正常工作。也许某事阻止了POST请求?
我已在Google展示信息中心验证我的网站是否为所有者,但这并未改变任何内容。
这是manifest.json:
{
"incognito": "spanning",
"name": "...",
"version": "1.0.5",
"manifest_version": 2,
"minimum_chrome_version": "23",
"icons": {
"16": "images/logo-16.png",
"32": "images/logo-32.png",
"48": "images/logo-48.png",
"128": "images/logo-128.png"
},
"chrome_settings_overrides": {
"search_provider": {
"encoding": "UTF-8",
"favicon_url": "http://www.mywebsite/favicon.ico",
"is_default": true,
"keyword": "...",
"name": "...",
"search_url": "http://www.mywebsite/search/index.php?a=web&q={searchTerms}"
}
},
"description": "...",
"default_locale": "fr",
"background": {
"scripts": [
"scripts/background.js"
]
},
"browser_action": {
"default_icon": {
"16": "images/logo-16.png",
"32": "images/logo-32.png",
"48": "images/logo-48.png"
},
"default_title": "mywebsite"
},
"options_page": "options.html",
"options_ui": {
"page": "options.html",
"chrome_style": true
},
"permissions": [ "cookies", "webRequest", "webRequestBlocking", "activeTab" ]
}
我在设置页面上使用了这种按钮:
<form action="http://www.mywebsite.com/search/index.php?a=preferences" method="POST" class="form-horizontal">
<label class="radio">
<input type="radio" name="linkw" id="linkOffw" value="_top" {$linkOffw} />
<strong>Non</strong> - Ne pas ouvrir les résultats dans un nouvel onglet.
</label>
<label class="radio">
<input type="radio" name="linkw" id="linkOnw" value="_blank" {$linkOnw} />
<strong>Oui</strong> - Ouvrir les résultats dans un nouvel onglet.
</label>
<button type="submit" class="btn btn-info">Enregistrer mes préférences</button>
<a href="http://www.mywebsite.com" class="btn">Retour</a>
</form>
我需要在我的清单上设置一些权限吗?
这是background.js
chrome.webRequest.onBeforeSendHeaders.addListener(function(details) {
details.requestHeaders.push({name: "DNT", value: "1"});
return {requestHeaders: details.requestHeaders};
}, {urls: ["<all_urls>"]}, ["requestHeaders", "blocking"]);
function iconClicked() {
chrome.tabs.create({
'url': 'http://www.mywebsite.com'
});
}
chrome.browserAction.onClicked.addListener(iconClicked);
答案 0 :(得分:0)