Facebook-c # -sdk как передать параметры формы и запросить права на одно и то же действие контроллера - PullRequest
0 голосов
/ 13 сентября 2011

У меня есть приложение iframe canvas, использующее версию 5.0.3 facebook-c # -sdk. Я использую в своей форме вызов html.FacebookSignedRequest () [который работает и помещает скрытое поле с длинным зашифрованным значением], но пользователь еще не принял разрешения (мы разрешаем браузеру пользователя наше приложение и запрашиваем разрешения при необходимости) .

Что происходит, мы используем [CanvasAuthorize] для запроса необходимых разрешений. Эта часть работает, пользователь перенаправляется на запрос разрешений FB, где они могут принять или отклонить их. Если они принимают, что отправляются обратно в наш метод контроллера, но единственный передаваемый параметр - это sign_request, все остальные параметры теряются.

Форма публикуется в / controller / action но я попробовал также apps.facebook.com/controller/action

[CanvasAuthorize(Permissions = "email,user_about_me,publish_stream,
                               offline_access")]
public ActionResult SomeMethod(string param1, string param2)

Когда я сделаю это, пользователь получит страницу с разрешениями, но при возврате к моему методу аргументы будут нулевыми.

Любые идеи о том, как передавать данные в метод контроллера при проверке, есть ли у пользователя разрешения на это?

Я прочитал несколько сообщений на эту тему, некоторые из них говорят, что Html.FacebookSignedRequest () сделает это, но не в моем случае. Другие говорят, что нужно заключить соглашение о нестандартном состоянии, которое, похоже, является способом для чего-то, что должно быть простым и, вероятно, уже частью SDK.

Пожалуйста, помогите

Редактировать - я обнаружил ту же проблему здесь от мистера Тоттена , но по какой-то причине это не сработало, даже когда я обновляюсь до 5.2.1.

1 Ответ

0 голосов
/ 13 сентября 2011

вы должны посмотреть на решение здесь: http://facebooksdk.codeplex.com/discussions/244819?ProjectName=facebooksdk

-Imran

...