下午好,
我有一个一般性的概念性问题,希望你们能帮助我理清.它主要是关于AngularJS,但也与所有MV * JS框架相关.
您如何处理AngularJS等世界中传统的服务器端功能?
考虑一个例子 – 身份验证.我有一个Web API业务层项目(使用它自己的url),它接受JSON并与数据库进行对话并向后发出JSON,标准内容.它有一个过滤器,用于检查标题中的用户名和密码,如果它们与API期望的用户名和密码不匹配,则不会让您使用该方法.
在AngularJS之前,我的客户端应用程序将是一个MVC(非web api)项目,具有非常轻的控制器 – 控制器的整个要点是从视图中的jQuery ajax方法接收数据,从web.config添加身份验证信息,传递此完整的东西到API网址,并将结果(通常是部分)视图吐回到jQuery.
似乎在AngularJS的世界中我不必这样做 – 我可以让Angular的$http方法直接用于API,然后让Angular做它的事情.这样就没有,因为缺乏更好的术语,客户端应用程序的“服务器端”根本就没有.但我不知道如何完成身份验证之类的事情.
我是否误解了客户端框架?客户端应用程序是否仍需要与实际API对话的“服务器端”组件?在那种情况下,Angular的魅力/好处是什么?使用控制器将部分视图吐出到jQuery本身就是一种很好的方法.
你可能会告诉我我是客户端框架的新手:)我感谢你的帮助!
另请查看https://github.com/witoldsz/angular-http-auth和http://www.espeo.pl/2012/02/26/authentication-in-angularjs-application以了解如何以最佳方式在angularjs中实现身份验证.