Интеграция API Facebook: тестирование по другому URL? - PullRequest
4 голосов
/ 01 апреля 2012

Я пытаюсь разработать сайт, который использует Facebook Connect для аутентификации и других вещей. Однако, похоже, что FBConnect в целом требует, чтобы URL-адрес веб-сайта был таким же, как вы зарегистрировали приложение. Это проблема, потому что хотя я запускаю сайт на

www.example.com

Я тестирую сайт на

localhost:9000

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

// local machine
git commit -a
git push origin master

// remote server
git pull origin master

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

Есть ли лучший способ сделать это? Я уверен, что другие (то есть все, кто когда-либо использовал FBConnect) сталкивались с этой проблемой раньше. Можно ли обмануть мой DNS, чтобы он указывал www.example.com на localhost во время тестирования, чтобы Javascript Facebook был обманут, чтобы продолжить работу?

Ответы [ 3 ]

3 голосов
/ 07 апреля 2012

Одним из способов решения этой проблемы является редактирование хост-файла вашей системы , чтобы он указывал на ваш домен localhost.Добавьте такую ​​строку в ваш файл /etc/hosts (или %SystemRoot%\system32\drivers\etc\hosts в Windows):

127.0.0.1     www.yourdomain.com

Другой подход - создать второе приложение на Facebook для вашей версии для разработки и использовать * 1008.* как URL для этой версии.Только не забудьте обновить идентификатор приложения и секретный ключ до рабочей версии при развертывании:)

2 голосов
/ 08 апреля 2012

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

Мне нравится использовать для этой цели совершенно отдельный сервертак что я могу разрабатывать и экспериментировать по желанию, не беспокоясь о сбое моего производственного приложения из-за ошибочного цикла или чего-то еще.- или-- Создайте поддомен (staging.example.com) и поместите клон вашего кода в отдельную корневую папку с той же структурой каталогов, что и у вашего приложения.

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

0 голосов
/ 24 декабря 2012

Я столкнулся с этой проблемой при попытке переместить мой код из разработки (localhost) в производство. Я смог использовать localhost в качестве URL-адреса холста и моего производственного домена для безопасного URL-адреса холста. Таким образом, я смог

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...