用Facebook登录桌面应用程序

里卡多

我有一个暗示要登录的应用程序(使用服务器请求),然后打开“真实应用程序”(在访问确认后)。我想使用Facebook和google +登录名为te用户简化工作。

出于应用程序注册的目的,我只需要发送电子邮件(如果使用了facebook或google +)。我正在尝试使用Facebook C#SDK API。

但是我有这个错误

附加信息:(OAuthException-#1)该请求无效,因为该应用程序被配置为桌面应用程序

这很奇怪,但它发生在这里:

public string GetAccessToken(FacebookOAuthResult oauthResult)
    {
        var client = new FacebookClient();
        dynamic result = client.Get("oauth/access_token",
        new
        {
            client_id = appId,
            client_secret = secret,
            redirect_uri = redirectUri,
            code = oauthResult.Code
        });
        return result.access_token;
    }`

其余代码

protected Uri GetLoginUrl()
        {
            FacebookClient a = new FacebookClient();
            var fbLoginUri = a.GetLoginUrl(new
            {
                client_id = appId,
                redirect_uri = "https://www.facebook.com/connect/login_success.html",
                response_type = "code",
                display = "popup",
                scope = "email"
            });
            return fbLoginUri;
        }
private void Window_Loaded_1(object sender, RoutedEventArgs e)
        {
            try
            {
                var loginUrl = GetLoginUrl();
                MyWebBrowser.Navigate(loginUrl);
            }
            catch (Exception ex) { }
        }
private void MyWebBrowser_Navigated(object sender, NavigationEventArgs e)
        {
            var fb = new FacebookClient();
            FacebookOAuthResult oauthResult;
            if (!fb.TryParseOAuthCallbackUrl(e.Uri, out oauthResult))
                return;
            if (oauthResult.IsSuccess)
                LoginSucceeded(oauthResult);
            else
                LoginFailed(oauthResult);
        }
public void LoginSucceeded(FacebookOAuthResult oauthResult)
        {
            // Hide the Web browser
            MyWebBrowser.IsEnabled = false;
            // Grab the access token (necessary for further operations)
            var tokenLoc = GetAccessToken(oauthResult);
            token = tokenLoc;
            var aux = new FacebookClient(token);
            aux.GetTaskAsync("fields", "id,name,email"); //Test, I want this variables
        }

我试图理解API并查看一些示例,但是我设法找到的示例似乎已经过时并且没有用。

瓦杰迪·加沙里(Wajdi Gharsalli)

我认为您应该使用类似以下内容的方法:

    _accessToken = facebookOAuthResult.AccessToken;
    var fb = new FacebookClient(facebookOAuthResult.AccessToken);
    dynamic result = fb.Get("/me/?fields=birthday,email,name");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Facebook登录桌面应用程序

来自分类Dev

Facebook桌面应用程序提交

来自分类Dev

用javascript编写桌面应用程序

来自分类Dev

Facebook应用程序登录错误

来自分类Dev

Cakephp应用程序的Facebook登录问题

来自分类Dev

Facebook登录-Android应用程序

来自分类Dev

用于cordova应用程序的facebook登录

来自分类Dev

iOS Facebook通过应用程序登录

来自分类Dev

保护桌面应用程序中的登录表单

来自分类Dev

C#使用桌面应用程序自动登录网站

来自分类Dev

用于Unity SDK和桌面应用程序的Facebook

来自分类Dev

使用Facebook凭据登录我的应用程序

来自分类Dev

Android应用程序因Facebook登录而崩溃

来自分类Dev

通过应用程序登录Facebook SDK 3.5无效

来自分类Dev

Facebook登录Window Phone 8.1应用程序

来自分类Dev

Android应用程序在Facebook登录时崩溃

来自分类Dev

使用Facebook登录按钮停止应用程序

来自分类Dev

通过应用程序登录Facebook SDK 3.5无效

来自分类Dev

如何通过Facebook登录您的应用程序

来自分类Dev

Android应用程序因Facebook登录而崩溃

来自分类Dev

尝试实现Facebook登录时无效的应用程序ID

来自分类Dev

应用程序在Facebook登录中获取nullPointerException时崩溃

来自分类Dev

测试应用程序上的Facebook登录

来自分类Dev

使用Facebook应用程序登录会造成混淆

来自分类Dev

我的 webview 应用程序无法登录 Facebook?

来自分类Dev

如何在我的应用程序中使用 Facebook 登录

来自分类Dev

Eclipse桌面应用程序

来自分类Dev

Facebook应用程序限制会影响从应用程序内部登录吗?

来自分类Dev

具有 facebook 登录功能的渐进式网络应用程序(反应应用程序)

Related 相关文章

热门标签

归档