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

Azure 将多个社交帐户链接到一个应用程序,azure,oauth-2.0,windows-phone-8.1,Azure,Oauth 2.0,Windows Phone 8.1,在开始之前,我知道问题的范围可能太广,但我认为讨论策略适合这个网站 说到这里,我想构建一个移动应用程序,从各种社交网络获取数据 当然,这要求我能够登录到每项服务,并拥有一个与我的平台(即Windows Phone 8.1)配合使用的API/库,除非所有工作都由某项服务在线完成 我在思考如何让一切都正常运转,我想出了两个主意: 导入并使用.NET库/包装器直接在用户设备上连接和使用服务 创建一个Azure移动服务,允许用户为我的应用程序创建一个帐户,并将其链接到他们的每个社交网络,在线使用这些服

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

说到这里,我想构建一个移动应用程序,从各种社交网络获取数据

当然,这要求我能够登录到每项服务,并拥有一个与我的平台(即Windows Phone 8.1)配合使用的API/库,除非所有工作都由某项服务在线完成

我在思考如何让一切都正常运转,我想出了两个主意:

  • 导入并使用.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,而且免费帐户太有限

我发现的另一个很酷的服务是

老实说,我对我的两种想法都有很多疑问,这就引出了真正的问题:

考虑到我想要使用的所有服务都基于oAuth2+REST API,您如何做到这一点?最好在服务器端完成所有工作,还是让相同的应用程序直接登录到设备上的每台服务器?不管您如何选择,您如何保存用户的登录

因为这个问题有很多不同类型的答案,我会投票给每个有用的答案,我会接受一个让我更容易处理的方案