合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
[TOC] >[success] # 处理post请求 * **post** 请求,即 **客户端** 要向 **服务端传递数据** ,如 **新建博客**,有 **表单都用post** * 通过 **post data** 传递数据,后期会讲解 * **浏览器** 无法 **直接模拟请求post请求** ,需要 **手写js用ajax去发送post请求(ajax可能还会产生跨域)**,或者使用 **postman** >[success] ## 安装 postman * **google**:如果可以访问 **google** ,可以直接去搜索 **postman chrome** * **百度搜索**:直接去搜索 **postman chrome crx** 安装成功后在谷歌浏览器上搜索栏输入 **chrome://apps/** ,就会看到这里多出来了一个 **postman** 插件 ![](https://img.kancloud.cn/39/10/391000224a8631ca7d9911ac72b07813_849x492.png) 然后点进去就可以看到下面的界面,这就是 **chrome** 里的一个 **插件** ,特别轻量,特别简单,当然也可以去安装一个 **postman** 的桌面应用 ![](https://img.kancloud.cn/4d/e2/4de2f607462cfae3c7236eaa671ed950_1387x793.png) >[success] ## post请求和 postdata 1. **app.js** ~~~ // 1. 引入node自带的http模块 const http = require('http') // 2. 通过http创建服务 const server = http.createServer((req, res) => { // 3. 判断请求方式 if(req.method === 'POST'){ // 4. 打印数据格式(客户端向服务端发送的请求头,可以根据这个content-type属性来处理不同类型的数据,不出意外是json类型) console.log('content-type', req.headers['content-type']) // 5. POST通过数据流方式接收数据 let postData = '' // 6. 给req注册data事件,当有数据提交过来就会触发,事件的作用是接收数据,接收大量数据的时候,是分块接收的 req.on('data', chunk => { postData += chunk.toString() }) // 7. 给req注册end事件,当数据全部接收完毕,会触发 req.on('end', () => { console.log(postData) res.end('hello world') }) } }) // 8. 监听8000端口 server.listen(8000) ~~~ 2. 用 **postman 请求 post 接口** 2.1 首先先输入 **请求地址** ,然后把请求方式改成 **post** ![](https://img.kancloud.cn/f5/41/f54133ce25ff90f4b488988cf30b5af8_1381x791.png) 2.2 然后我们选中 **Body** ,再选中 **raw** ,然后把数据类型选择 **JSON(application/json)** ![](https://img.kancloud.cn/61/02/6102da529d168bea4d1be1fc86ddc277_1379x788.png) 选择完 **JSON(application/json)** 后,**headers** 中就会增加了一个请求头属性, **Content-Type:application/json** ![](https://img.kancloud.cn/b4/a0/b4a0e17e439dfabe1b3b1728d2803cdb_1379x788.png) 这个也就是我们代码中获取的请求头 ![](https://img.kancloud.cn/b4/99/b499c15d47995f62bfa2f0f9c50366cc_1212x578.png) 2.3 然后写一个要给后端传的 **JSON对象参数** ,写完了点击 **Send** ![](https://img.kancloud.cn/9d/e9/9de917fa548b46d69e042bd0ff84cd01_1381x788.png) 点完 **Send** 后下面会出现一个 **hello world** ![](https://img.kancloud.cn/f9/54/f9541455b1e7a5c9cbc42d62a53d1978_1381x787.png) 然后看一下我们的编辑器控制台 ![](https://img.kancloud.cn/7d/cf/7dcfbec0c0951095f423e1dc1f3a0fc5_382x140.png)