Не удается получить ответ обратного вызова 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;
}
Другие вопросы по тегам