1

User & Friend PermissionsWebサイトでユーザーの電子メールを取得するために、アプリケーションを設定しました。クリックするとこの情報が表示されますPreview Login Dialog

このアプリは受信します:

Your basic info
Your email address (xyz@xyz.com)
Your birthday
Your relationship details
Your photos

Webサイトにログインしようとすると、アプリケーションに必要な情報は次のとおりです。

このアプリは受信します:

Your basic info

なんで?メインアプリケーションにプレビューと同じ権限がないのはなぜですか?

よろしく

編集:

私はこのチュートリアルのAuthを使用しています:http ://www.asp.net/mvc/tutorials/mvc-4/using-oauth-providers-with-mvc-そして私のプロジェクトではコードは変更されていません。
正直なところ、Twitterログインも提供したいので、認証方法を変更したくありません。このメカニズムは私に最適です。
Facebookに「scope=email、publish_stream」を追加したいだけです。

私のウェブサイトがFacebookアプリケーション(&scope=email,publish_stream)にリダイレクトするときにこのクエリを手動で入力すると、すべてが完璧に機能することを発見しました。バックコードでこれを行うための解決策はありますか?

4

3 に答える 3

2

App Centerのアプリの詳細ページには、新しいユーザーに必要な権限が表示されます。これは、この機能のログインダイアログのバージョンと見なすことができ、新しいユーザーがAppCenterから直接アプリを簡単にインストールできるようにします。アプリに必要な権限のセットは、[設定]>[権限]タブで構成できます。

ソース:https ://developers.facebook.com/docs/guides/appcenter/#authorization

したがって、これらの権限設定は、App Centerに構成するアプリがある場合にのみ適用されます。この場合、次のことが役立ちます。

  • ユーザーがアプリの使用を決定する前に、ユーザーに求められる権限を表示し、
  • 追加のログインダイアログは避けてください。

アプリはAppCenterに表示されないため(おそらく)、コードから通常の方法を使用して権限を要求する必要があります。これを行うには、以下をお読みください:Facebook C#SDKでユーザー権限を使用する方法

編集: 今のところAppCenterのことは忘れてください。それはあなたがしなければならない最後のステップです。App Centerは、すばらしい有名なアプリのみを収集します。これらのアプリはすべて完全に機能し、Facebookの従業員は次のことを受け入れる必要があります。

すべてのアプリがAppCenterに表示されるわけではなく、高品質の基準を満たしていないアプリを削除する権利を留保します。アプリの詳細ページを作成したら、アプリとアプリを確認して、資格、提出、品質のガイドラインを満たしていることを確認します。

そのため、アプリをApp Centerに表示するように依頼することは、本当に最後に考える必要があります。

于 2013-03-12T21:56:21.850 に答える
1

問題が解決しました!

このチュートリアルを使用している場合:http ://www.asp.net/mvc/tutorials/mvc-4/using-oauth-providers-with-mvc このコマンド

に挿入これで 、アプリケーションは自動的にユーザーの電子メールを要求します-何も変更する必要はありません。ここに結果があります-Package manager consoleupdate-package DotNetOpenAuth.Core


result.UserName

于 2013-03-13T10:37:14.780 に答える
0

StéphaneBruckertは正しいです。アプリの設定ページに追加する権限は、ユーザーがアプリセンターからウェブサイトにアクセスした場合にのみ適用されます。

サイト内から許可を求めるには、のscopeパラメーターにそれらの許可を追加する必要がありますLogin URL

fb = new FacebookClient();

    var loginUrl = fb.GetLoginUrl(new
    {

        client_id = "app_id",

        redirect_uri = "http://www.example.com/Facebook.aspx",

        response_type = "code",

        scope = "email,publish_stream" // Add other permissions as needed

    });
Response.Redirect(loginUrl.AbsoluteUri);

これは、 Facebook C#SDKを使用するための優れたチュートリアルです。

コメントでの質問については、[アプリの詳細]ページにすべての詳細を入力し、最後にレビューのために送信することで、アプリをアプリセンターに公開できます。

于 2013-03-13T06:03:14.730 に答える