API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Использование API других социальных сетей
Ответить
LonelyANDRoid
Сообщения: 34
Зарегистрирован: 11 мар 2011, 16:06

API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение LonelyANDRoid »

Приветствую, товарищи

Я только начал заниматься Flash-программированием, поэтому заранее прощу прощения за глупые или некорректные вопросы.

Задача
Написать что-то вроде собственного API для API соц. сетей (на данный момент это ВКонтакте, Одноклассники и Facebook). То есть само приложение не должно знать, в какой соц.сети оно запущено. Оно будет обращаться не к API конкретной сети, а к моему API, которое будет распознавать запрос, модифицировать и перенаправлять его в зависимости от текущей соц.сети. Также и обратно.

Вопрос
При проектировании решения данной задачи я сразу же уперся в стену: как же именно распознать конкретную соц.сеть? Хотелось бы узнать, что думают на этот счет более опытные коллеги.

Заранее благодарен за любую помощь =)
Аватара пользователя
bodnar
Модератор
Модератор
Сообщения: 1399
Зарегистрирован: 03 апр 2010, 06:41

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение bodnar »

хмм, переменная окружения HTTP_REFERER не?
LonelyANDRoid
Сообщения: 34
Зарегистрирован: 11 мар 2011, 16:06

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение LonelyANDRoid »

2 bodnar,
К сожалению, web-программировании я также пока несилен. Подскажите, пожалуйста, как это сделать или где можно об этом почитать?

2 all,
Есть еще идеи?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение Александр »

LonelyANDRoid
Приведи пример работы на каком-нибудь методе (словами).
Если возвращать ответ приложению будет твой сервер, то запросы надо будет слать с него. С сервера можно вызвать не все api методы социальных сетей.
LonelyANDRoid
Сообщения: 34
Зарегистрирован: 11 мар 2011, 16:06

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение LonelyANDRoid »

Александр,
К примеру, приглашение друзей.
Мое приложение:
1. вызывает функцию моего API, пусть будет myAPI.inviteFriends(userID:String);
2. затем myAPI, в соответствии с текущей сетью (пусть это будет ВКонтакте), (возможно) выполняет некоторые необходимые манипуляции;
3. вызывает функцию wrapper.external.showInviteBox().
Как-то так, наверное.

bodnar & everybody,
я всё еще не разобрался, как использовать HTTP_REFERER - не знаю как вообще выполнять HTTP запросы. При этом смущает то, что не все браузеры передают реферера, и настраивать это надо в настройках браузера, как я понял, что, в свою очередь, не слишком хорошо для казуальной флеш-игры в соц.сети.

Еще раз прошу прощения за нубские изречения :oops:
Аватара пользователя
bodnar
Модератор
Модератор
Сообщения: 1399
Зарегистрирован: 03 апр 2010, 06:41

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение bodnar »

Вы хотите чтобы ваш собственный api был частью флешки? Или все же запрос на свой сервер который в свою очередь запрос к нужному api и возвращается результат?
начните учить php, там и разберетесь
LonelyANDRoid
Сообщения: 34
Зарегистрирован: 11 мар 2011, 16:06

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение LonelyANDRoid »

За совет спасибо, начнем =)
Но
bodnar писал(а):Вы хотите чтобы ваш собственный api был частью флешки?
вообще-то да, план изначально был именно таков. Это возможно?
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение Александр »

LonelyANDRoid писал(а):1. вызывает функцию моего API, пусть будет myAPI.inviteFriends(userID:String);
2. затем myAPI, в соответствии с текущей сетью (пусть это будет ВКонтакте), (возможно) выполняет некоторые необходимые манипуляции;
3. вызывает функцию wrapper.external.showInviteBox().
Вариант 1: Приложение обращается к твоему серверу, твой сервер выполняет запрос к api и возвращает результат - не все методы можно вызывать с сервера.
Вариант 2: Приложение обращается к твоему серверу, сервер определяет какой api метод нужно вызвать (в зависимости от соц сети) и возвращает приложению какое-то значение, например vk_invite. В приложении записано, что при возвращении такого ответа от сервера, будет вызываться wrapper.external.showInviteBox().
Вариант 3: Не делать лишнее обращение к серверу как во втором варианте, а хранить все методы соц сетей в самом приложении. Так же определить соц сеть и вызывать нужную функцию.
LonelyANDRoid писал(а):я всё еще не разобрался, как использовать HTTP_REFERER

Код: Выделить всё

<?if (strpos($_SERVER['HTTP_REFERER'], "http://vk.com")) { // метод vk} else if (strpos($_SERVER['HTTP_REFERER'], "http://my.mail.ru")) { // метод мой мир} // и т.д.?>
Можно определять соц сеть по flashVars. Изучить какие параметры передаются в каждой соц сети и найти те по которым можно определить.
LonelyANDRoid
Сообщения: 34
Зарегистрирован: 11 мар 2011, 16:06

Re: API (wrapper / адаптер / обертка) для нескольких соц. сетей.

Сообщение LonelyANDRoid »

Александр
Огромное спасибо =)
Ответить