NodeJS和AngularJS概念混淆
NodeJS and AngularJS Conceptual confusion
我最近用AngularJS做了一些简单的单页应用程序,但我从来没有使用过服务器,我在本地运行…今天我开始了一个NodeJS课程,有一些事情困扰着我…例如,如果我在127.0.0.1:1330上有一个请求,并且有一个NodeJS服务器在这个地址/端口上监听,我必须根据URL选择我将响应的数据(例如:如果URL是'/',我将响应index.html)。前进……假设这个页面使用外部脚本资源,那么我必须配置一个路由来响应脚本文件时,它被请求,这就是我的疑问在哪里…如果你有一个AngularJS应用程序,整个过程的概念是在开始时加载所有的HTML/Script文件,这样当你改变URL时(在Angular中使用HREF来伪造URL),你就不必重新发出请求,如果你需要NodeJS服务器在每次URL改变时都用正确的文件响应,那么整个过程就会中断。我想我对NodeJS路由和AngularJS路由做了一些混淆。
通常你只会提供一个html页面(和它的资源),并重写所有相关的url,以便他们加载相同的页面(假设路由器是在html5模式的漂亮的url)。如果你不使用html5模式那么angular路由只使用锚点所以它与URL无关因为服务器会看到的是对index.html
的请求不漂亮的路由(不需要重写,因为它只是使用锚)
http://localhost/index.html/!/myRoute
Pretty route: (server must still server index.html)
http://localhost/myRoute当使用漂亮的URL时,angular使用HTML5历史API来改变浏览器中显示的URL -这样做的问题是,如果用户直接导航到该页,或者如果用户刷新页面,服务器需要知道它应该为/myRoute发送index.html
你将从不同的url为一个单页应用程序加载的是你的数据-你可能会做一个AJAX请求来联系一个端点获取/设置/更新/删除数据。
为了进一步阅读,下面的问题有很多关于Angular路由的好答案在html5模式下没有哈希的AngularJS路由
- 否'访问控制允许来源'标头存在于IISNOde中请求的资源(AngularJS+NodeJs)上
- 如何“;得到“;从NodeJS到AngularJS
- AngularJS路由服务器端支持(NodeJS+express)
- Json在nodeJs和AngularJs中返回undefined
- 在angularjs或nodejs中获取Pocket访问令牌
- 如何从本地文件夹(磁盘存储)读取或获取图像文件,并使用nodejs服务器将其发送到Angularjs
- 陷入因果报应验证作业(nodejs,angularjs)
- nodejs expressjs angularjs routing
- 如何使用angularjs,nodejs和mysql执行CRUD操作
- 希望仅为已登录的用户显示链接,否则它显示该链接在AngularJS和NodeJS中被隐藏或禁用
- 来自 AngularJS 的 NodeJS HTTP 请求
- AngularJS:http 链调用问题和 NodeJS:在多个 http 调用中使用变量的问题
- 使用MEAN angularjs Nodejs堆栈的Phonegap客户端
- AngularJS+NodeJS路由-不工作
- AngularJS/NodeJS/RESTEasy+JBoss/LDAP堆栈的身份验证机制
- HTML 5模式移除angularjs+nodejs中的散列
- 为web应用生产做好准备(angularjs/nodejs)
- 从PHP过渡到JavaScript(AngularJS, NodeJS等)的最佳方式
- AngularJS + NodeJS -调用注入服务时出错
- Javascript / AngularJS / NodeJS -检查副本