私の質問は非常に似ていますthisしかし、私はそれをさらに一歩踏み出す必要があると思います。OAuth2.0を読むSigned_Request Facebook登録C#MVC
「署名されたリクエストとしてアプリケーションにデータが渡されます。signed_requestパラメータは、受信したデータがFacebookによって送信された実際のデータであることを確認する簡単な方法です。
ユーザが自分のasp c#MVCサイトにログインして「登録」をクリックすると、リダイレクトURLはhttp://site/account/registerになります。その時点(アカウント/登録管理者への投稿)では、署名されたリクエストを使用してユーザーの情報を収集し、自分のサイトにローカルで登録できるようにしたいと考えています。私は利用可能なデータのFacebookにアクセスする方法を把握することはできません。
$data = json_decode(base64_url_decode($payload), true);
C#での対応はなんですか?どのようなタイプの変数/データは、ポストに渡すFacebookのですか?そして、 "$ payload"にどうやってアクセスしますか?
[HttpPost]
public ActionResult RegisterFacebook(RegisterFacebookModel model)
{
Facebook.FacebookSignedRequest sr = Facebook.FacebookSignedRequest.Parse("secret", model.signed_request);
return View(model);
}
を使用してそれを行う方法ですあなたの応答、ネイサンいただきありがとうございます。私は時間が足りず、もう一度テストする機会がありませんでしたが、あなたが示したことは理にかなっています。私はSDKについても見ていきます。 – Josh
私はまだこの(またはSDK)を使用して実装する方法を理解していないと思います。 signed_requestは、fb:登録コードのredirect-uriへの投稿として送信されますか?私はログイン/登録のためにjs SDKを使用していますが、会員資材が処理されるとより深い統合のために参照したFacebookAPIを使用しようとしています。私はこの点を過ぎることができればいいと思っています...私はちょうどハングアップしています。私はMVCプロジェクトを構築しており、httpポストハンドラで登録コールバックを指し示していますが、fbが送信するはずのjsonオブジェクトをデコードする必要があります。しかし、私は何も戻っていない。 – Josh
Nathan - SDKを使用しているので、すぐにフォローアップをお願いできます。「登録」パラメータを除いて、signed_requestのすべてのパラメータが表示されます。 (つまり: "登録":{ "name": "Paul Tarjan" ...私は何か間違っているのですか?Facebookのテストページに投稿すると、SDKデコードを行った後では表示されません。 "電子メール": "[email protected]"、 "場所":{ "名": "サンフランシスコ、カリフォルニア州"、 "ID":114952118516947 }、私はv5.0.8を持っている – Josh