Я пишу простой скрипт содержимого для хром, который читает текст на веб-страницах, используя google tts api. Скрипт отлично работает на доменах под google.co.uk, но не работает на других страницах.chrome extension, content script - запрос перекрестного домена
(помощь для использования: он играет выбранный текст после того, как ключ '0' нажат)
manifest.json:
{
"manifest_version": 2,
"name": "text reader",
"description": "text reader using google's text to speech api",
"version": "0.1",
"content_scripts": [{
"matches": ["<all_urls>"],
"js": ["tts.js"]
}],
"permissions": [
"http://*/",
"https://*/"
]
}
tts.js:
function Tts() {
var ttsurl = "https://translate.google.co.uk/translate_tts";
var audio = new Audio();
audio.onloadeddata = function() {
audio.play();
};
this.read = function(text) {
var url = ttsurl + "?q=" + escape(text) + "&tl=en";
audio.src = url;
alert(url);
}
}
var tts = new Tts();
document.onkeypress = function() {
if(event.keyCode == 48) { //key '0' pressed
var text = getSelection();
tts.read(getSelection().toString());
}
}
Есть хороший способ сделать запросы на междоменные запросы из сценария контента? Я также рад изменить настройки своего браузера. То, что я пробовал: установление разрешения для всех URL-адресов (см. Разрешения manifest.json)