Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在ember.js应用程序中处理身份验证_C#_Asp.net Mvc_Authentication_Oauth_Ember.js - Fatal编程技术网

C# 如何在ember.js应用程序中处理身份验证

C# 如何在ember.js应用程序中处理身份验证,c#,asp.net-mvc,authentication,oauth,ember.js,C#,Asp.net Mvc,Authentication,Oauth,Ember.js,我刚刚开始学习Ember.js和SPA。我有ASP.NETMVC/C#/Razor的背景 身份验证是如何工作的?在常规网站中,我只使用Oauth提供程序,当它返回经过身份验证的信息时,创建一个forms auth票证 我还没有找到任何关于作者的好文章。。。特别是在ASP.Net上 我迫不及待地想开始深入研究ember.js,但我知道这对我来说从一开始就很重要 谢谢 一般来说,余烬应用程序中的身份验证与大多数web应用程序中的身份验证没有太大区别。您可以使用会话cookie来标识已登录服务器的用户

我刚刚开始学习Ember.js和SPA。我有ASP.NETMVC/C#/Razor的背景

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

我还没有找到任何关于作者的好文章。。。特别是在ASP.Net上

我迫不及待地想开始深入研究ember.js,但我知道这对我来说从一开始就很重要


谢谢

一般来说,余烬应用程序中的身份验证与大多数web应用程序中的身份验证没有太大区别。您可以使用会话cookie来标识已登录服务器的用户,并在会话尚未通过身份验证时显示登录UI

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

替代方法

其他模式包括在首次加载Ember应用程序的index.html页面时验证身份验证,或者在API报告会话未登录时从Ember应用程序重定向到传统登录页面

注释

无论采用何种方法,每个服务器API都必须验证用户是否经过身份验证和授权。另外,请注意,您通常会将所有JS代码和Handlebar模板发送给所有用户,而不管其权限如何。这通常不是一个问题,因为JS或模板中没有敏感信息,但需要记住

更新:


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

您目前如何登录非js?会员API?我正在从头开始创建一个ember应用程序来学习框架。来自asp.NETMVC背景,我更喜欢在那个平台上使用ember。在我以前的应用程序中,我接收oauth身份验证信息,并从中创建一个formsauth票证,本质上是将它们登录。第一个建议是创建一个可以从JS调用的操作方法,用于oauth身份验证。第二个建议是,使用web API。因此,您只需在操作中执行oauth,然后在ember应用程序中设置一个变量,如
isAuthenticated
?是的,完全正确。将其作为json响应发送回。感谢Luke,感谢您的详细回答。