Я пишу приложение MVC 3 и использую Facebook C # SDK . Пожалуйста, проверьте, что не так с этим логином:
[Authorize(Roles = "Admin")]
[FacebookAuthorize(
LoginUrl = "https://graph.facebook.com/oauth/authorize?client_id=186437571372857&redirect_uri=http://portugalparty.com/Admin/AIndex/&scope=publish_stream,create_event,email",
Perms = "publish_stream,create_event,email")]
Проблема
Сначала пользователь вводит логин сайта, а затем запрашивается логин Facebook и, при необходимости, разрешения.
Затем, после того, как логин и права доступа Facebook установлены, я смотрю бесконечную игру в теннис между моим сайтом и Facebook, и она никогда не останавливается!
Что не так и что я могу с этим поделать?
Вот что есть в моем файле web.config, относящемся к этому SDK:
Я не пишу приложение Canvas. Я просто хочу использовать Facebook в своем приложении MVC на своем домене.
<system.web>
<httpHandlers>
<add verb="*" path="facebookredirect.axd"
type="Facebook.Web.FacebookAppRedirectHttpHandler, Facebook.Web" />
</httpHandlers>
Немного информации, я помню:
Я видел, как пользователь вводил вышеупомянутое действие один раз, а затем я занялся другими вещами. Многое могло случиться между этим моментом и сейчас.
Во-первых, я изменил URL сайта в настройках приложения facebook
от "http://portugalparty.com/Admin/Index/"
до "http://portugalparty.com/Admin/AIndex/"
.
Facebook сказал, что изменения могут отразиться на всех серверах в течение нескольких минут, но прошло уже много часов! Может быть, это не проблема.
Вы знаете, в чем проблема? Я могу поискать дополнительную информацию, если вы скажете мне, что искать.
Спасибо
РЕДАКТИРОВАТЬ: Cookie данные
Я сделал журнал на другой странице моего сайта и перенаправил URL, действие которого имеет атрибут FacebookAuthorize, но проблема все еще сохраняется.
Я запросил файл cookie Facebook на своем сайте (portugalparty.com) и понял, что эти данные:
this.Request.Cookies[1]
{System.Web.HttpCookie}
Domain: null
Expires: {01-01-0001 00:00:00}
HasKeys: true
HttpOnly: false
Name: "fbs_186437571372857"
Path: "/"
Secure: false
Value: "\"access_token=234%7C0e147965318dff91499e702d-1270460469%7CKzr7Gp9oY1FOkT...........fsd...fUf14Eb3223457fG6fWMI&base_domain=portugalparty.com&expires=0&secret=313c9.a.sd7861&session_key=0e147965318dff91499e702d-1270460469&sig=702511b1gdfgdfgdfg23tuy587684653252354356ed25c03c989&uid=1270456469\""
Values: {%22access_token=186437571372857%257C0e1gte235318dff91499e702d-1270460469%257C324zr7Gp9oY1FOkTnU14Eb7H6fWMI&base_domain=portugalparty.com&expires=0&secret=fb196116d9dfds32jty6253456645c97861&session_key=0e1479653fsd3245221491499e702d-1270460469&sig=702511b1a35423543534f45657d25c03c989&uid=127675444429%22}
Я не знаю много о файлах cookie, но почему свойство Доменное имя имеет значение null? В Firefox я вижу cookie в папке моего домена в окне Cookies.
И почему свойство Expires установлено на начало времени? Я попросил разрешения на доступ в автономном режиме, но думаю, что это не имеет никакого отношения к cookie, верно?
Детали файла cookie в порядке?
Имеет ли это какое-либо отношение к IIS 7?
Я изменил свой файл hosts так, что я запускаю проект MVC локально, как если бы я был в сети. Чтобы избежать записи порта вручную, я запускаю проект через IIS (я выбираю опцию «Использовать локальный веб-сервер IIS». Может ли это быть из-за этого?
Спасибо!