我的 android 应用程序中唯一的登录选项是通过 Facebook 登录。我想使用 Web 服务 (ASMX),并且对于每个请求,服务器必须验证用户是否通过 facebook 进行了身份验证。我找到了一个解决方案:
1) 从 Android 应用程序向 Facebook 验证用户
2) 获取 FB auth token 到 android app
3) 将身份验证令牌和 facebook UID 从 Android 转发到 Web 服务器
4) 在 Web 服务器上,使用提交的令牌进行 Facebook API 调用。
如果来自 web 服务器的 Facebook API 调用返回有效的身份验证,并且用户 id 等于 Android 应用程序提交的用户 id,则您的服务器可以信任该 id(并且您可以确定 Android 身份验证是真实的)
我的问题是:
- 每次向 Web 服务发送请求时,是否必须发送 facebook 用户 ID 和令牌?或者使用 cookie(如果可能的话)
- 我必须将 Web 服务注册为 facebook 应用程序吗?我发现了这个: C# Facebook SDK 入门