function getRemoteData($url)
{
$userAgent = "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2414.0 Safari/537.36";
$cURLsession = curl_init();
curl_setopt($cURLsession, CURLOPT_URL, $url);
curl_setopt($cURLsession, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($cURLsession, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURLsession, CURLOPT_USERAGENT, $userAgent);
curl_setopt($cURLsession, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($cURLsession, CURLOPT_CONNECTTIMEOUT, 30);
if(($curlResult = curl_exec($cURLsession)) === false)
{
die("Error fetchind data: ".curl_error($cURLsession)." from ".$url);
}
curl_close($cURLsession);
return $curlResult;
}
$url = "Здесь нужная страница";
$pageContent = getRemoteData($url);
background.js
chrome.runtime.onMessage.addListener(messageListener);
function messageListener(request, sender, sendResponse)
{
if(request.sender == "injectionScript")
{
switch(request.cmd)
{
case "someAction":
{
.....
}
}
}
}
injectionScript.js
window.addEventListener
(
"message",
function(event)
{
chrome.extension.sendMessage
(
{
sender: "injectionScript",
cmd: "someAction",
someParam: "еще чего-нибудь для получателя"
},
function(response){}
);
}
);
manifest.json
{
....
"background":
{
"scripts": ["background.js"]
},
"permissions":
[
"<all_urls>",
"webRequest",
"webRequestBlocking",
"tabs"
],
"content_scripts":
[
{
"matches":
[
"<all_urls>"
],
"js":
[
"injectionScript.js"
]
}
],
"content_security_policy":
"script-src 'self' 'unsafe-eval'; object-src 'self'"
....
}
Пытаюсь написать расширение которoe будет принимать запрос от страницы с любым url, выполнять определенные действия и отсылать назад результат.
А вот что вы имели ввиду "для самих скриптов" я не понял.
Что тут общего с отправкой сообщения из кода загруженной страницы в extension?
- str_replace('<', '', $src) - не работает
Форматирование код порезало?