codeigniter — PHP PHP SDK в Expressionengine getSessionFromRedirect, возвращающий NULL

Я пытаюсь обновить существующую учетную запись Facebook на сайте Expressionengine с API v1.0 до v2.2 в соответствии с требованиями обновления платформы FB. Поскольку Javascript SDK не является опцией (из-за интеграции с модулем EE members), я решил использовать PHP SDK v4.

У меня есть рабочий URL для входа, но когда пользователь возвращается с URL для входа в Facebook, после входа в систему, getSessionFromRedirect() возвращается NULLвместо сеанса.

Я просмотрел интернет и просмотрел ответы, опубликованные для людей с похожими проблемами, но ни одно из решений не помогло:

  • добавление ‘/’ в конец URI перенаправления OAuth
  • разделение кода на два разных класса / файла, чтобы избежать getLoginUrl() изменение состояния
  • и различные другие методы проб и ошибок

В настоящее время я использую адаптацию Бен Маршалс Кодигнитер пример К сожалению, до сих пор возвращается NULL когда пользователь перенаправлен обратно.

Функция для генерации URL входа в FB выглядит примерно так:

public function generate_fb_url(){
$tags = $this->EE->TMPL->tagdata;
$vars = array();
$redirect='http://redirect.com';
$config=array('redirect'=>$redirect);

$this->EE->load->library('facebook_lib', $config, 'facebook');
array_push($vars, array('status'=>'true', 'error'=>'', 'fburl'=>$this->EE->facebook->login_url(), 'debug'=>'redirect -'.$redirect));
return $this->EE->TMPL->parse_variables($tags, $vars);
}

Он просто инициирует библиотеку CI Facebook и создает URI FB. Как только пользователь возвращается из Facebook, приложение умирает и делает var_dump($this->session); возвращается NULL,

Буду признателен за любую информацию, сейчас я вырываю волосы! У меня ужасное чувство, что проблема связана с обработкой сессий Expressionengine, но я могу ошибаться.

2

Решение

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

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

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

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