【问题标题】:Azure Mobile Service with Facebook Auth: Get user info带有 Facebook 身份验证的 Azure 移动服务:获取用户信息
【发布时间】:2014-08-23 14:46:57
【问题描述】:

我不熟悉使用 Azure 移动服务(或任何移动开发)。 我已按照本教程为 Android 应用启用 Facebook 身份验证。 http://azure.microsoft.com/en-us/documentation/articles/mobile-services-how-to-register-facebook-authentication/

我的移动服务有一个 .NET 后端,客户端是 Android。 我还设法将访问令牌保存到表中;

public async Task<IHttpActionResult> PostTodoItem(TodoItem item)
    {
        var currentUser = User as ServiceUser;
        item.UserId = currentUser.Id;
        TodoItem current = await InsertAsync(item);
        return CreatedAtRoute("Tables", new { id = current.Id }, current);  
    }

保存的值格式如下:Facebook:907xxxxxxxxx757

我正在尝试使用 Facebook SDK 获取用户的名字。

var currentUser = User as ServiceUser;
        var accessToken = "current.Id";
        var client = new FacebookClient(accessToken);
        dynamic me = client.Get("me", new { fields = "name,id" });
        string firstName = me.name;

但在我的 Android 虚拟设备 (AVD) 上收到以下错误:“{message: an error has occurred}” Eclipse logcat 似乎没有返回任何错误...我猜是因为产生错误的不是 Android 应用程序,而是移动服务。

使用此人的 Facebook 名称(我当然不会有)有效;

var currentUser = User as ServiceUser;
        var client = new FacebookClient();
        dynamic me = client.Get("zuck" });

为什么这种方法不起作用?

还是我对 Facebook 令牌的理解不正确? 令牌是否可能存在于 AVD 上,因此移动服务无法使用令牌?

【问题讨论】:

    标签: android facebook facebook-graph-api azure-mobile-services


    【解决方案1】:

    看来我对令牌的怀疑是正确的。 这似乎有效..

               var serviceUser = this.User as ServiceUser;
               var identities = await serviceUser.GetIdentitiesAsync();
               var fb = identities.OfType<FacebookCredentials>().FirstOrDefault();
    
               var client = new FacebookClient(fb.AccessToken);
               dynamic me = client.Get("me", new { fields = "name,id" });
               string firstName = me.name;
               string lastName = me.last_name;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-03
      • 2016-07-13
      相关资源
      最近更新 更多