Проблема с возвратом строки запроса из Linkedin для аутентификации с использованием Codeigniter 2.0.3

Во-первых, я использую CI 2.0.3. Используя старый добрый Google, было нетрудно найти код для решения моей текущей проблемы. Я нашел эти исходники, но они были написаны с использованием 1.7.2:

http://www.sudhircodes.com/main/codeigniter/status-update-to-linkedin/ http://blog.justni.com/posting-to-linkedin-from-php-and-codeigniter/

Я могу подключиться к linkedin, ввести свои учетные данные пользователя для авторизации приложения.

Я получаю это обратно:

http://www.domain.com/auth/linkedin_auth?oauth_token=ffdd1d7f-29a3-423c-ada7-a85d31bec080&oauth_verifier=97677

Но проблема в том, если в конфиге: $config['uri_protocol'] = 'AUTO';

Затем возникает ошибка 302, которая превращается в http://www.domain.com/auth/linkedin_auth. Нет oauth_token.

Если у вас есть $config['uri_protocol'] = 'QUERY_STRING'; 302 не происходит, поэтому строка запроса не повреждена, вместо этого я получаю «Отправленный вами URI содержит запрещенные символы».

Нет проблем, просто измените $config['permitted_uri_chars'], верно? Неправильно, я меняю его и даже устанавливаю его пустым, и я просто получаю цикл HTTP, в котором он продолжает нажимать /auth/linkedin_auth.

Так кому-нибудь удалось заставить CI 2.0.3 хорошо работать с linkedin? Я медленно лысею! :п

Спасибо


person PaulM    schedule 04.09.2011    source источник


Ответы (1)


Я отмечу это как ответ.

Я вернулся и попробовал новую установку CI. Оно работает. Так что где-то в моем коде должен быть гремлин :(

Редактировать: Выяснилось, что библиотеке Twitter от Эллиота Хогина удается перехватить строку запроса, когда twitter и linkedin или любой сайт возвращают вам oauth_token или oauth_verifier при выполнении аутентификации. Поэтому мне пришлось придумать свой собственный класс CI, расширяющий класс Tijs Verkoyen.

person PaulM    schedule 05.09.2011
comment
Обязательно сообщите об этом Эллиоту на странице GitHub. - person Phil Sturgeon; 07.09.2011
comment
Проблема уже есть (хотя и объясняется на ломаном английском), но проект, похоже, больше не поддерживается. - person PaulM; 07.09.2011