Node.js, Express的服务器搭建过程的问题

Node.js, Express的服务器搭建过程的问题

Express : node.js 的框架,根据2012年BYvoid的说法,是node.js官方唯一推荐的框架

怎么搭建项目? - 安装nodejs->npm->express - express 的问题:

2017年, express-generator已经被独立成命令行工具了,所以要用 npm install express-generator 这样才能用express命令

怎么启动项目?

启动服务器可以用node app.js,因为app.js装载了express模块并且运行了必须的函数; 或者用npm start,它会读取package.json执行命令

express框架的代码: 会出现views, config, apps目录

可能要用到的知识(语法)

一个网页的代码中会有一些地方需要js处理,或者处理DOM节点,要用ajax - jQuery - 框架的常见分层(比如路由、post) - express跟请求响应的方法 app.all、app.get、app.post, app.use

有人说all,get,post是三个别名,其实是扯淡,但是三个方法也真的差不多,它只是决定了get方法和post方法访问某个url的时候对应的处理方法。但是这种设计是非常反常理而且看不出有多大意义的,不是很懂这种设计思想。一般情况下不应该是传递参数吗? 但是另外的on和addEventListener倒是明显地有问题了,这两个函数完全相同,但是名字不一样。反正都是当事件触发的时候调用了函数。

注意中间件

目前为止不是很懂中间件和框架的关系。而且也不是很清楚框架跟http请求的顺序,中间件的功能等等。

如果单纯靠网上的代码是比较难实现大型系统的。 要做好模块化,尽量做好层次分级和可以配置。 大型系统的架构很复杂,可能还要有mongodb存储。

在写爬虫的时候经常要等待防止被识别,可能会看到下面的方法,尽管如此这个是没什么用的,因为会大大降低效率,还不如用代理, - javascript代码的setTimeOut(可以用来循环调用自身),这个是基础js里有的函数,但是看起来也是异步回掉函数。

回调函数

说到代理,刚刚看了语法感觉是只要在request方法里改了http头部的某个url就OK了?这个需要验证。

在页面解析方面: cheerio跟一般的jquery的语法相似,但是它是一个缩水版本(在cheerio的官网有说),比如祖先元素必须确定(用id)

Promise (可选外部模块) 解决回调地狱 - .then函数=>用来解决回调地狱陷阱

其他设计缺陷

Node.js问题在哪里? require不像C++一样会对产生的命名冲突进行检测, 当核心模块(http, fs)跟其他模块命名冲突时,优先加载核心模块 - js的调试错误在浏览器的console是可以看的

visual studio code

在Visual Studio Code中是可以安装Node.js的插件的。好处跟其他的语言一样,在VS Code里看代码比较好看。

时间: 2024-10-19 17:15:41

Node.js, Express的服务器搭建过程的问题的相关文章

基于 Node.js + Express + mongoDB + Bootstrap 搭建的电影网站

电影网站 ?? GitHub: https://github.com/bxm0927/movie-website 此项目是基于 Node.js + Express + mongoDB + Bootstrap 搭建的电影网站. 主要功能模块: 一期:前台电影展示页.电影详情页.后台电影管理中心(电影录入.电影修改) 二期:用户登录注册注销功能.用户识别和持久化.后台用户管理中心(用户录入.用户修改).电影评论 <!-- more --> 图片预览 技术栈 [前端] HTML/CSS/JS:亘古不

Node.js + Express + Mongodb 开发搭建个人网站(一)

一.Node + Express环境搭建 0.去Node官网下载安装node,如果安装了 npm 和 node的话 那么就 安装 全局的 express,-g全局安装 npm install express –g 1.然后使用 express 创建项目,命令:   express 项目名 初始化一个node项目 注意 这里 默认的页面模版 是jade 大部分小项目使用的是 ejs模版,所以 利用express创建ejs模版的node项目,命令为express -e 项目名 express -e

Node.js + Express + Mongodb 开发搭建个人网站(二)

二.路由 1.打开 routes/index.js ,这个意思就是  捕获到访问主页的get请求: 并通过 app.js 分配到对应的路由里: 看到这里,打开 http://127.0.0.1:3000/users/  来感受一个路由的意思: routes/index.js 文件: 如果我们请求是get,路径是 '/' 那么就是渲染index.ejs这个视图,可以省略后缀名 .ejs: 这个的意思是将数据传到index.ejs中 并输出到页面上. 2.视图 views/index.ejs 可以看

Node.js Express 框架学习

转载:http://JavaScript.ruanyifeng.com/nodejs/express.html#toc0 感觉很牛的样子,不过觉得对初学者没太大用,里面很多例子用的api都没有详细的说明.为了学习备份,所以拷贝过来. Express框架 来自<JavaScript 标准参考教程(alpha)>,by 阮一峰 目录 概述 运行原理 底层:http模块 对http模块的再包装 什么是中间件 use方法 Express的方法 all方法和HTTP动词方法 set方法 response

Windows下Node.js+Express+WebSocket 安装配置

Node.js是一个Javascript运行环境(runtime).实际上它是对Google V8引擎进行了封装.V8引 擎执行Javascript的速度非常快,性能非常好.Node.js对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好.Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快.易于扩展的网络应用.Node.js 使用事件驱动, 非阻塞I/O模型而得以轻量和高效,非常适合在分布式设备上运行的数据密集型的

node.js+express+mongoose实现用户增删查改案例

node.js+express+mongodb对用户进行增删查改 一.用到的相关技术 使用 Node.js 的 express 框架搭建web服务 使用 express 中间件 body-parse 解析表单 post 请求体 使用 art-template 模板引擎渲染页面 使用第三方包 mongoose 来操作 MongoDB 数据库 二.在命令行用 npm 执行相关的命令 初始化项目,在命令行执行 npm init 然后一路回车就行了(或者直接 npm init -y)生成 package

玩转Node.js(四)-搭建简单的聊天室

玩转Node.js(四)-搭建简单的聊天室 Nodejs好久没有跟进了,最近想用它搞一个聊天室,然后便偶遇了socket.io这个东东,说是可以用它来简单的实现实时双向的基于事件的通讯机制.我便看了一些个教程使用它来搭建一个超级简单的聊天室. 初始化项目 在电脑里新建一个文件夹,叫做“chatroom”,然后使用npm进行初始化: $ npm init 然后根据提示以及相关信息一步一步输入,当然也可以一路回车下去,之后会在项目里生成一个package.json文件,里面的信息如下: 1 $ ca

body-parser Node.js(Express) HTTP请求体解析中间件

body-parser Node.js(Express) HTTP请求体解析中间件 2016年06月08日     781     声明 在HTTP请求中,POST.PUT和PATCH三种请求方法中包含请求体,Node.js 原生HTTP模块中,请求体要基于流的方式接收和解析.body-parser是一个HTTP请求体解析中间件,使用这个模块可以解析JSON.Raw.文本.URL-encoded格式的请求体,Express框架中就是使用这个模块做为请求体解析中间件. 请求体解析 1.1 原生环境

Node.js Express+Mongodb 项目实战

Node.js Express+Mongodb 项目实战 这是一个简单的商品管理系统的小项目,包含的功能还算挺全的,项目涵盖了登录.注册,图片上传以及对商品进行增.删.查.改等操作,对于新手来说是个很不错的练手项目,分享给大家. GitHub源码:https://github.com/oceanMin/cms 项目前准备 安装node.js 安装express 安装mongoDB 章节目录 快速开始 快速开始 模块 express商品管理系统介绍 框架搭建.ejs .express.static