Как настроить приложение Facebook для поддоменов

Я создаю многопользовательское приложение и борюсь с включением входа через Facebook в веб-приложение.

Например, арендаторы используют субдомен

http://tenant-1.domain.com/
http://tenant-2.domain.com/
http://tenant-3.domain.com/

Итак, я создал приложение, и когда дело доходит до добавления веб-сайта, как я могу сделать его доступным для всех арендаторов? Что-то типа:

введите здесь описание изображения

Но, конечно, это не работает, и если я добавляю только http://domain.com/, это не работает ни на http://tenant-1.domain.com/, как только я нажимаю на <fb:button-login>, я получаю:

введите здесь описание изображения

Как это сделать, не создавая отдельное приложение FB для каждого арендатора?

Я использую это, чтобы помочь людям подписаться на свою учетную запись, я просто хочу, чтобы логин получил имя и адрес электронной почты, или им нужно указать это в ящиках имени и электронной почты...


person balexandre    schedule 09.09.2011    source источник


Ответы (1)


Это невозможно, но есть варианты обходного пути. Я думаю, что лучше всего было бы использовать один домен для выполнения аутентификации, указанный как redirect_uri. К этому redirect_uri вы можете добавить некоторые параметры запроса, например, ваш redirect_uri может быть:

http://auth.domain.com/auth.php?tenant=tenant-1

Затем в коде для auth.php вы должны получить этот параметр клиента из строки запроса, аутентифицировать пользователя, сохранить его токен доступа и затем немедленно перенаправить его обратно на tenant-1.domain.com.

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

person Matthew Johnston    schedule 09.09.2011
comment
не совсем то, что хотелось бы :( попробую что-нибудь другое. - person balexandre; 10.09.2011
comment
На самом деле, похоже, это работает, если вы включаете http:// в домен приложения. Ознакомьтесь с этим ответом для получения дополнительной информации - stackoverflow.com/questions/11932191/ Это означает, что вам нужно будет иметь отдельный поддомен для каждого приложения! - person Deano; 21.01.2014