Van*_*nel 10 c# asp.net asp.net-mvc facebook-login
我正在使用Visual Studio 2013,C#和.NET Framework 4.5.1开发ASP.NET MVC Web Api。
我在读这篇文章,这很有趣。它仅讨论ASP.NET MVC应用程序,没有提及如何使用Web Api实现它。
我想我可以将其与Web Api一起使用,但是我不知道如何使用,因为正如我在文章中所读到的那样,我将需要一个登录页面,而Web api没有该页面。
如果我将通过手机(iOS,Android,Windows Phone等)使用该Web API;我需要做什么?
也许我需要在移动应用程序上登录表单,或者我需要在Web API上登录页面以允许在Google,Facebook等上登录。
有什么建议吗?
@VansFannel,这是一个古老的问题,我猜您已经继续前进,但是我将其留在这里供以后的求职者使用。
您是正确的,它没有提供登录页面,但是提供了登录页面本身将使用的内容。
开始之前,请下载一个名为PostMan的Chrome插件。在使用过程中,我将显示一些屏幕截图。我已经设置了一个基本的WebAPI,其中仍带有示例Values控制器,但是受[Authorize]保护。对于本示例,我正在http:// localhost:54211上运行示例WebAPI 。
这是一个高级过程:
我猜您在这个新数据库中还没有任何用户,但是如果您这样做,请跳过此步骤。否则,这就是在没有UI的情况下创建它们的方式。
如果正文为空并且标头状态为200,则说明成功:
如果失败,您将返回标头状态错误400和正文中的某种错误,例如:
好的,我们在数据库中有一个用户,让我们通过WebAPI进行身份验证。
在服务器的结果中,如果成功(状态200),您将获得所谓的“承载者令牌”-位于“ access_token”字段中,如下所示:
为了进行测试,请将令牌值复制到剪贴板(在您的应用中,您可以将其存储在变量中)。
如果您尝试在未通过身份验证的情况下调用[Authorize]受保护的方法,则会看到类似以下内容:
但是您已经通过身份验证了,对吗?那它为什么不认识你呢?因为它是基于REST的并且是无状态的-通话完成后不再认识您。因此,每次拨打电话时,您都必须“提醒”您的身份。为此,您可以传递每个请求之前收到的令牌。
如果您获得成功(200分),则可以检查它的身体数据,它将得到您的回应:
就是这样完成的!希望对您或其他人有帮助。
归档时间: |
|
查看次数: |
2882 次 |
最近记录: |