Не удается получить ответ обратного вызова Superfeedr в CakePHP
Я уже добавил этот URL в свой список подписчиков: http://push-pub.appspot.com/
Кстати, я также хорошо настраиваю URL обратного вызова, например: http://online-domain.com/data/forward
Код моего контроллера:
public function forward() {
$this->autoRender = false
CakeLog::write('debug', 'Callback work!!');
CakeLog::write('debug', json_encode($this->request->data));
}
Но по моему debug.log
:
2013-12-23 06:06:47 Debug: Callback work!!
2013-12-23 06:06:47 Debug:
2013-12-23 06:07:38 Debug: Callback work!!
2013-12-23 06:07:38 Debug:
2013-12-23 06:12:59 Debug: Callback work!!
2013-12-23 06:12:59 Debug:
Не знаю почему $this->request->data
не работает, он должен получить данные обратного вызова от superfeedr. Я хочу получить обратный звонок от superfeedr. Кто-нибудь знает, что я был не прав? Заранее спасибо.
2 ответа
Я не знаком с CakePHP, однако знаю, что большинство фреймворков предполагают, что тело запроса POST является содержимым формы, и, следовательно, не будет отображать содержимое из уведомления Superfeedr. Вы хотите получить доступ к "сырой" версии ТЕЛА. Этот ответ может помочь (при условии, что вы можете получить доступ к нужным переменным напрямую).
Вы должны повторить de hub_challege в запросе get. Нечто подобное.
if(isset($_Get["hub_challenge"])){
echo $_Get["hub_challenge"];
return;
}