基于node.js开发的文章生成器(五、网页版本的文章生成器--准备篇)

简介: # 引言这次我们来做网页版文章生成器,首先我们学习一些node.js开发服务器的入门知识。# 框架的使用与导入因为node原生开发服务器较麻烦,这里我们采用express框架来开发。首先我们调出控制台,在控制台中输入 npm i express然后等待一会儿,我们下载完express之后,通过 import express from 'express';导入 express 模块。因为我们本项目采取的ES Moudle模块,所以这里我们使用import完成导入。接下来通过定义app完成初始化 `const app = express();`之后调用 app中的

引言

这次我们来做网页版文章生成器,首先我们学习一些node.js开发服务器的入门知识。

框架的使用与导入

因为node原生开发服务器较麻烦,这里我们采用express框架来开发。

首先我们调出控制台,在控制台中输入

npm i express

然后等待一会儿,我们下载完express之后,通过 import express from 'express';导入 express 模块。
因为我们本项目采取的ES Moudle模块,所以这里我们使用import完成导入。

接下来通过定义app完成初始化 const app = express();

之后调用 app中的listen方法 完成服务器的启动 listen中传入两个参数 一个是服务器启动在的那个端口号,另一个参数则是一个函数启动时调用的function.

我们通过一个实例来理解

import express from 'express';

const app = express();

app.listen(6666,()=>{
    console.log('successfully');
})

接下来我们继续打开控制台 输入 node cs.js

结果如下:

successfully

我们便已成功启动了serve,并且serve跑在6666端口上。

get post请求的挂载

众所周知,请求方式中有get,post,pull......等等多种的请求方式,这里我们主要来演示挂载get和post两种请求的挂载。

get请求的挂载

import express from 'express';

const app = express();

app.get('/getmethod',(req,resp)=>{
    console.log('get')
    resp.send("这是一个get请求");
})

app.listen(6666,()=>{
    console.log('serve is running at http://localhost:6666');
})

代码写完后我们运行这个js,同样的在控制台中输入 node cs.js

首先控制台打印出来了 serve is running at http://localhost:6666

我们打开接口调试工具 选择get请求 ,然后访问

然后你就会发现.......

image.png

那么这是为什么呢?

原来我们服务器虽然是启动在http://localhost:6666 上, 但是我们挂载get请求却是在 \
http://localhost:6666/getmethod 中。所以我们应该访问上述的url 而不是服务器的启动地址。

修改接口文档 运行 发现 返回了

这是一个get请求

控制台中也打印了get

get请求的挂载已经学习完毕。

post请求的挂载

完成了get请求的学习 接下来我们来学习 post请求的挂载

类比get请求的挂载 只不过从get换成了post

全部代码如下:

import express from 'express';

const app = express();

app.get('/getmethod',(req,resp)=>{
    console.log('get')
    resp.send("这是一个get请求");
})

app.post('/postmethod',(req,resp)=>{
    console.log('post')
    resp.send("这是一个post请求");
})

app.listen(6666,()=>{
    console.log('serve is running at http://localhost:6666');
})

打开接口测试的工具 对 http://localhost:6666/postmethod 发起post请求。

接口工具返回结果:

这是一个post请求

控制台输出:

post

post 请求学习完毕。

req接收JSON

首先我们调用app.use()

代码如下:

app.use(express.urlencoded({extended:false}));

接下来我们演示post请求的接受JSON并相应一个结果

import express from 'express';

const app = express();
app.use(express.urlencoded({extended:false}));
app.get('/getmethod',(req,resp)=>{
    console.log('get')
    resp.send("这是一个get请求");
})

app.post('/postmethod',(req,resp)=>{
    console.log('post')
    resp.send("这是一个post请求");
})

app.post('/postcs',(req,resp)=>{
    const result = req.body;
    console.log(result);
    resp.send('成功了');
})

app.listen(6666,()=>{
    console.log('serve is running at http://localhost:6666');
})

首先我们要加上 app.use(express.urlencoded({extended:false})); 否则是接受不到的。

调用 node cs,js

打开接口测试工具 url:http://localhost:6666/postcs 发起请求方式为post,记得传入参数。这里我传入了name为ceshi的测试的value。

接口测试工具结果:

成功了

控制台结果:

[Object: null prototype] { ceshi: '测试' }

工具的提升

我们可以下载nodemon工具,用来提升我们的开发效率。

传统的node xxx.js启动之后 每次改变都要先 ctrl+c停止服务器 然后改变之后 ctrl+s保存 然后再次 node xx.js再次启动

非常繁琐复杂麻烦

这里可以下载nodemon nodemon xxx.js 启动 每次只要ctrl+s 保存即可 不需要再停止服务器再启动了

下载方式

打开控制台 输入 npm install nodemon -g

进行全局安装

下集预告

下次继续讲解服务器的代码层面的优化。

相关文章
|
1月前
|
JavaScript 内存技术
node与npm版本对应关系以及使用nvm管理node版本
node与npm版本对应关系以及使用nvm管理node版本
164 0
|
27天前
|
JavaScript 内存技术
不同版本NodeJS切换使用
不同版本NodeJS切换使用
12 0
|
1月前
|
Web App开发 JavaScript 前端开发
js开发:请解释什么是Node.js,以及它的应用场景。
Node.js是基于V8的JavaScript运行时,用于服务器端编程。它的事件驱动、非阻塞I/O模型使其在高并发实时应用中表现出色,如Web服务器、实时聊天、API服务、微服务、工具和跨平台桌面应用(使用Electron)。适用于高性能和实时需求场景。
18 4
|
1月前
|
内存技术
node版本与npm版本不对应的解决方案
node版本与npm版本不对应的解决方案
25 0
|
1月前
|
Web App开发 JavaScript 前端开发
深入浅出:Node.js 在后端开发中的应用与实践
【2月更文挑战第13天】本文旨在探讨Node.js这一流行的后端技术如何在现代Web开发中被应用以及它背后的核心优势。通过深入分析Node.js的非阻塞I/O模型、事件驱动机制和单线程特性,我们将揭示其在处理高并发场景下的高效性能。同时,结合实际开发案例,本文将展示如何利用Node.js构建高性能、可扩展的后端服务,以及在实际项目中遇到的挑战和解决方案。此外,我们还将讨论Node.js生态系统中的重要工具和库,如Express.js、Koa.js等,它们如何帮助开发者快速搭建和部署应用。通过本文的探讨,读者将获得对Node.js在后端开发中应用的深入理解,以及如何有效利用这一技术来提升开发效率
|
2月前
|
JavaScript 前端开发 算法
【Node.js 版本过高】运行前端时,遇到错误 `Error: error:0308010C:digital envelope routines::unsupported`
【Node.js 版本过高】运行前端时,遇到错误 `Error: error:0308010C:digital envelope routines::unsupported`
66 0
|
2月前
|
JavaScript
查看NodeJs版本和查看NPM版本
查看NodeJs版本和查看NPM版本
48 0
查看NodeJs版本和查看NPM版本
|
2月前
nodejs17/18版本报错:digital envelope routines::unsupported
nodejs17/18版本报错:digital envelope routines::unsupported
44 0
|
2月前
|
JavaScript iOS开发 MacOS
掌握NVM、NRM和NPM:Node.js开发的利器
掌握NVM、NRM和NPM:Node.js开发的利器
66 0
|
Web App开发 前端开发
《网站建设与网页设计从入门到精通Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript》——3.6 实战演练——创建基本文本网页
本节书摘来自异步社区《网站建设与网页设计从入门到精通Dreamweaver+Flash+Photoshop+HTML+CSS+JavaScript》一书中的第3章,第3.6节,作者:何新起 更多章节内容可以访问云栖社区“异步社区”公众号查看。
1647 0