2013-03-24 28 views
7

我刚刚开始研究Ember.js和SPA的。我在ASP.Net MVC/C#/ Razor中有一个背景。如何在ember.js应用程序中处理验证

身份验证如何工作?在常规网站中,我只使用Oauth提供程序,当它返回经过身份验证的信息时,请创建表单身份验证票证。

我还没有找到任何好的内容/文章覆盖auth ...特别是在ASP.Net。

我迫不及待地开始挖掘ember.js,但我知道这对我来说从一开始就很重要。

谢谢!

+1

你目前如何登录非js?会员API? – 2013-03-24 13:27:04

+0

我开始从零开始学习框架的一个烬应用程序。来自asp.net mvc背景,我宁愿在该平台上使用ember。我以前的应用程序,我采用oauth身份验证信息,并从中创建一个formsauth票据,基本上将它们登录。 – Chaddeus 2013-03-24 13:55:12

+1

第一个建议是创建一个操作方法,您可以从JS调用oauth身份验证。第二个建议,使用Web API。 – 2013-03-24 14:03:23

回答

4

一般来说,在大多数Web应用程序中,Ember应用程序中的身份验证与auth没有太大差别。如果会话尚未通过身份验证,您可以使用会话Cookie来识别登录到服务器上的用户并显示登录UI。

在传统的网络应用程序中,检查&潜在的重定向将发生在页面请求上。在Ember应用程序中,您可以在API请求上执行此操作,通常从您的路由器发送,如果API响应指示用户未登录,则转到显示用户用户名/密码表单的登录路由。如果您使用的是OAuth,它将是一个类似的模式,但允许用户在该点启动OAuth流程。

替代方法

其它图案包括验证身份验证,当你第一次加载灰烬应用程序的index.html页面,或重定向了灰烬应用到传统的登录页面时,API报告,本次会议是没有登录。

注意

不管采用哪种方式,重要的是每个服务器API的验证您的用户进行身份验证和授权是非常重要的。另外,要意识到,无论权限如何,您通常都会将所有JS代码和Handlebars模板发送给所有用户。这通常不是一个问题,因为JS或模板中没有敏感信息,但需要注意的事项。

更新:

我已成为新的[torii][1]库为处理身份验证,包括与第三方服务提供一些简单的原语的粉丝。

+0

谢谢卢克,感谢彻底的回答。 – Chaddeus 2013-04-14 17:28:50

相关问题