将多个社交帐户链接到一个应用程序

时间:2014-10-25 13:23:13

标签: azure oauth-2.0 windows-phone-8.1

在开始之前,我知道问题的范围可能过于宽泛,但我认为讨论策略适合这个网站。

说实话,我想构建一个从各种社交网络中提取数据的移动应用。

当然,这要求我能够登录每个服务并拥有一个适用于我的平台的API /库,即 Windows Phone 8.1 ,除非所有内容都已完成在线服务。

我正在思考如何使一切运转起来,我提出了两个想法:

  • 导入并使用.NET库/包装器直接在用户设备上连接和使用服务。
  • 创建一个 Azure移动服务,它允许用户为我的应用创建一个帐户并将其链接到他们的每个社交网络,在线处理这些服务并使我的应用只与我的 AMS

这是我想要使用的社交网络的当前情况:

+----------------+---------------------------------+--------------------------------------------------------------------+
| Social Network |          Windows Phone          |                               Azure                                |
+----------------+---------------------------------+--------------------------------------------------------------------+
| Facebook       | http://facebooksdk.net/         | login supported                                                    |
| Twitter        | http://tweetinvi.codeplex.com/  | login supported                                                    |
| Instagram      | http://instasharp.org/          | not supported                                                      |
| Foursquare     | SharpSquare can be adapted      | https://gist.github.com/rfaisal/9899185#file-login-js may work (?) |
| Flickr         | https://flickrnet.codeplex.com/ | not supported                                                      |
+----------------+---------------------------------+--------------------------------------------------------------------+

现在,虽然 Windows Phone 似乎是最好的,但这将迫使我处理不同的登录工作流程,并且如果其中一个服务的API发生变化,可能会出现问题,因为我需要更新应用程序并使其与新API一起使用,假设这些库背后的开发人员也决定更新它们!

使用 Azure 只需要单个服务器端更新,使其更易于管理,并且还有助于管理用户的异构数据,因为我可以在线解析它们,我可以以所有服务之间通用的格式返回它们(减少设备用于下载服务&API中包含的无用内容的带宽)。

我还调查了其他内容,我发现 Auth0 这似乎是一项很好的服务,但他们不支持 Foursquare / Flickr 并且免费帐户太有限了。

我找到的另一项很酷的服务是https://intridea.github.io/omniauth/

说实话,我对这两种方式都有很多怀疑,这引出了我们真实的问题:

鉴于我想要使用的所有服务都基于 oAuth2 + REST API,您将如何使其工作?让一切都在服务器端完成是否更好,或者可以让同一个应用程序直接登录到设备上的每个服务器?尽管您有选择,您将如何保存用户的登录信息?

由于这个问题对很多不同类型的答案都是开放的,我会提出每个有用的答案,并且我会接受一个让我更容易使用的答案。

0 个答案:

没有答案