Ответ Superfeedr не работает в Laravel

Я хочу получить фиды с superfeedr.com, используя PubSubHubbub api, но мой ответ на обратный вызов не работает. Я не могу связаться по моему обратному вызову. Вот мой код

class Superfeedr
{
private $topic;
private $callback;
private $hub = 'http://superfeedr.com/hubbub';
public $verbose = false;

function __construct($topic, $callback, $hub='')
{
$this->topic = $topic;
$this->callback = $callback;
if ($hub) {
$this->hub = $hub;
}
}

public function request($mode)
{

$post_data = array (
'hub.mode'  => 'retrieve',
'hub.callback'  => urlencode($this->callback),
'hub.topic' => urlencode($this->topic)
);foreach ($post_data as $key=>$value) {
$post_data_string .= $key.'='. $value.'&';
}$url =$this->hub .'?'.$post_data_string;

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json'));
curl_setopt($ch, CURLOPT_USERPWD, 'testdata:1234');
curl_setopt($ch, CURLOPT_BUFFERSIZE, 4096);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 25);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
$output = curl_exec($ch);
}
}

и мой файл php

  #Retrieve.php

$superfeedr = new Superfeedr('http://feeds.bbci.co.uk/news/world/asia/rss.xml',
'mydomainurl.com/callback',
'https://push.superfeedr.com');

$superfeedr->verbose = true;
$data = $superfeedr->request('list');

Здесь я хочу сообщить вам, что мой URL обратного вызова является одним из моих действий Laravel. Который

public function callback(Request $request)
{
\Log::info("Testing before callback");
if(isset($_Get["hub_challenge"])){
echo $_Get["hub_challenge"];
return;
}

// Just for testing
\DB::table('test')->insert(['name' => "Test callback data. Please ignore"]);

}

Но ничего не происходит в моем лог-файле и базе данных тоже. У кого-нибудь есть идеи, тогда, пожалуйста, дайте мне знать, что здесь не так. Благодарю.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]