Как организовать OAuth-логины и / API-файлы. - PullRequest
0 голосов
/ 11 ноября 2011

Перед прочтением, пожалуйста, обратите внимание, что я хочу узнать, нашел ли кто-нибудь лучший способ организации oauth-логинов и API-авторизаций.Все мои слова работают нормально, но прежде чем я добавлю больше API, мне интересно, сможет ли кто-нибудь помочь мне разобраться.Я знаю, что это не простой вопрос, так как вы не смотрите на мои каталоги и код, но я надеюсь, что кто-то столкнулся с этой организационной проблемой.Это приводит к путанице, поскольку URL-адреса обратного вызова должны быть в корне.

Мой сайт в настоящее время имеет следующие oauth-логины: T, Y !, G, FB - все работает нормально.Мой корень беспорядок с кучей файлов обратного вызова, которые должны быть в корне, чтобы работать должным образом, как: login-twitter.php, login-fb.php и т. Д., И эти файлы также имеют связанные файлы, такие как kill-session.php и translation.php, а также каталоги, в которых хранятся «необходимые» файлы, чтобы эти oauth работали.

Опять же, все мои oauth используют эти два файла вместе с name-site-login.php.

#1 kill_session.php
#2 confirmation.php 

Небольшое сравнение между моими T, Y!и oauth-файлы Facebook

В моем oauth-файле Twitter есть что-то вроде 6 файлов, и задаюсь вопросом, есть ли лучший вариант.

#1 login-twitter.php
#2 getTwitterData.php
#3 /config/twconfig.php  
#4 /config/functions.php
#5 /twitter/twitteroauth.php
#6 /twitter/OAuth.php

Сравнить с Y!:

Yahoo

require yahoo/lib/Yahoo.inc
require config/functions.php

Сравнить с Facebook:

Facebook

require facebook/facebook.php
require config/fbconfig.php
require config/functions.php

Теперь, если я захочу добавить несколько новых API, я буду добавлять больше файлов обратного вызова, и это будет ужасно.тьфу, если бы у кого-то был способ держать вещи в порядке, это было бы здорово.

1 Ответ

0 голосов
/ 11 ноября 2011

Почему бы не использовать один и тот же URL обратного вызова для всех, но с разными параметрами в зависимости от авторизованного приложения?

Таким образом, вы могли бы иметь http://www.yoursite.com/oauth-callback/?authority=twitter для вашего обратного вызова в твиттере.Тогда это вопрос структурирования вашего кода и вашей модели персистентности вместо файлов.

Кроме того, для правильной работы ваши обратные вызовы не обязательно должны быть в корне?

...