node.js的express模块实现GET和POST请求
一、环境
1、安装express
npm i express@4.17.1 // 安装express模块
2、安装nodemon
npm i nodemon -g
3、安装cors
npm install cors --save 或者 npm install cors -D
4、运行命令
nodemon .\test.js
二、代码(话不多说直接上代码)
1、代码结构:
test.html为页面
test.js为服务器端代码
apiRouter为封装的路由模块
2、apiRouter.jsconst express = require("express");
const database = require("mime-db");
const router = express.Router();
//导入
const cors = require('cors');
//挂载
router.use(cors({
origin:['http://localhost:8083'],
methods:['GET','POST'],
alloweHeaders:['Conten-Type', 'Authorization']
})); // 挂载对应的路由
router.get("/get", (req, res) => {
// 通过 req.query 获取客户端通过查询字符串,发送到服务器的数据
const query = req.query
let backData = query.name+'test拼接'
// 向客户端响应处理的结果
res.send({
status: 0, // 0成功,1失败
code:200,
msg: "get请求成功!",
data: backData, // 响应给客户端的数据
});
}); router.post("/post", (req, res) => {
// 通过 req.body 获取请求体中包含的 url-encoded 格式的数据
const body = req.body;
let backData = body.author+'test拼接处理数据'
// 调用res.send方法,向客户端响应结果
res.send({
status: 0,
code:200,
msg: 'POST请求成功!',
data: backData
}) }); module.exports = router;3、test.js
const express = require("express");
// 创建服务器实例
const app = express(); // 配置解析表单数据的中间件
app.use(express.urlencoded({ extended: false })); // 一定要在路由之前,配置cors中间件,从而解决接口跨域问题
const cors = require("cors");
app.use(cors()); // 导入路由模块
const router = require("./apiRouter"); // 把路由挂载到app实例上
app.use("/api", router); // 启动服务器
app.listen(8081, () => {
console.log("server running at http://127.0.0.1:8081");
});4、test.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<script src="https://cdn.staticfile.org/jquery/3.4.1/jquery.min.js"></script>
</head>
<body>
<button id="btnGET">GET</button>
<button id="btnPOST">POST</button>
<script>
$(function () {
// 测试Get接口
$("#btnGET").on("click", function () {
$.ajax({
type: "GET",
// url: "http://127.0.0.1:8081/api/get",
url: "http://10.15.253.205:8081/api/get",
data: {
name: "zs",
age: 30,
}, success: function (res) {
console.log(res);
},
});
});
// 测试Post接口
$("#btnPOST").on("click", function () {
$.ajax({
type: "POST",
url: "http://10.15.253.205:8081/api/post",
data: {
bookname: "西游记",
author: "吴承恩",
},
success: function (res) {
console.log(res);
},
});
});
});
</script>
</body>
</html>效果:
写在最后,简单的node服务器,希望可以帮到大家,
node.js的express模块实现GET和POST请求的更多相关文章
- node.js中express模块创建服务器和http模块客户端发请求
首先下载express模块,命令行输入 npm install express 1.node.js中express模块创建服务端 在js代码同文件位置新建一个文件夹(www_root),里面存放网页文 ...
- node.js安装express模块应用服务框架
1.创建工程文件夹case-04 2.在终端窗口进入文件夹目录,并输入:npm init,并一路回车,最后看到在case-04文件夹里自动生成了package.json 文件 3.打开vscode,进 ...
- node.js使用express模块创建web服务器应用
1.安装express模块 在命令行输入 npm install body-parser --save npm install express --save 2.创建app.js文件 /*应用程序入口 ...
- Node.js基于Express框架搭建一个简单的注册登录Web功能
这个小应用使用到了node.js bootstrap express 以及数据库的操作 :使用mongoose对象模型来操作 mongodb 如果没了解过的可以先去基本了解一下相关概念~ 首先注 ...
- node.js框架express的安装
node.js框架express的安装 首先假定你已经安装了 Node.js,接下来为你的应用创建一个目录,然后进入此目录并将其作为当前工作目录. $ mkdir myapp $ cd myapp 通 ...
- node.js,express入门看详细篇
先最简单的代码 安装 npm install express app.js 代码内容 const express = require('express') const app = express() ...
- node.js使用express框架进行文件上传
关于node.js使用express框架进行文件上传,主要来自于最近对Settings-Sync插件做的研究.目前的研究算是取得的比较好的进展.Settings-Sync中通过快捷键上传文件,其实主要 ...
- 如何设计一个基于Node.js和Express的网站架构?
前言 今年七月份,我和几个小伙伴们合伙建立了一个开发团队.业务开展如火如荼的同时,团队宣传就提上了日程,所以迫切需要搭建公司网站出来.确定目标后我们就开始考虑如果构建一个企业网站.先是进行业内调查,看 ...
- Code Your First API With Node.js and Express: Set Up the Server
How to Set Up an Express API Server in Node.js In the previous tutorial, we learned what the REST ar ...
随机推荐
- QGIS源码编译步骤详解——官方新方案
目录 源码下载 环境下载 Cygwin64 OSGeo4W CMAKE Visual Studio 2017 环境配置 配置 编译 方案详细可见源码文件中INSTALL.md. 源码下载 QG ...
- Protoc安装
系统:linux 记住,千万别混乱版本,一般protoc可执行文件在/usr/local/bin/或/usr/bin/下 个人这里使用3.13版本示例,下面两部分命令可以写入shell脚本,记住执行要 ...
- OpenHarmony 3.1 Beta版本关键特性解析——HAP包安装实现剖析
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 石磊 随着社会的不断发展,人们逐渐注重更加高效.舒适.便捷.有趣的生活和工作体验. OpenAtom OpenHa ...
- Selenium3自动化测试【27】Frame的操作
本篇文章内容摘要 " 讲解Python3+Selenium3如何处理Frame窗体" 同步视频知识与系列知识内容,可关注:[公众号]:柒哥测试:[WX]:Lee-890;[视频号] ...
- 初学Java时没有理解的一些概念
背景 之前学Java属于赶鸭子上架,草草学习基础语法便直接做课程作业,许多概念问题仍不清楚,故在此梳理一下,主要参考廖雪峰和互联网资料. Java运行方式与JVM Java是介于编译型语言(C++)和 ...
- Istio实践(3)- 路由控制及多应用部署(netcore&springboot)
前言:接上一篇istio应用部署及服务间调用,本文介绍通过构建.netcore与springboot简单服务应用,实现服务间调用及相关路由控制等 1..netcore代码介绍及应用部署 新建.netc ...
- 【python免费代码】设计一个简单的学生信息管理系统
文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...
- vue项目中cookie的使用
Vue使用cookie和session 1:cookie和session 为了防止数据运输或存储终端,特地设置了cookie和session,他们其实都是将数据存储当地. cookie数据保存在客户端 ...
- 攻防世界-MISC:base64÷4
这是攻防世界高手进阶区的第一题,题目如下: 点击下载附件一,发现是一个文本文档,打开后得到一串字符串 由题意猜测这些字符串应该是base16加密过的,写个脚本跑一下 import base64 s = ...
- Redis实现并发阻塞锁方案
由于用户同时访问线上的下订单接口,导致在扣减库存时出现了异常,这是一个很典型的并发问题,本篇文章为解决并发问题而生,采用的技术为Redis锁机制+多线程的阻塞唤醒方法. 在实现Redis锁机制之前,我 ...

