Node.js Request用法
server.js
const express = require('express'); const bodyParser = require('body-parser'); const multer = require('multer'); // 解析form-data数据 const UUID = require('uuid'); //生成一串uuid const storage = multer.diskStorage({
destination: 'src/request/upload', filename: (req, file, cb) => {
// 后缀名 let extName = file.originalname.slice(file.originalname.lastIndexOf('.')) // 文件名 let fileName = UUID.v1() + file.originalname.split('.')[0]; cb(null, fileName + extName); } }) const upload = multer({
storage: storage, limits: {
fieldSize: '2MB' // 最大上传文件大小 } }); const app = express(); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({
extended: true })); app.post('/json', (req, res) => {
res.json(req.body); }) app.post('/form', (req, res) => {
res.json(req.body); }) app.post('/formData', upload.single('avatar'), (req, res) => {
res.json(req.body); }) app.listen(3000, () => console.log('server running at http://localhost:3000'));
client.js
const request = require('request'); const fs = require('fs'); // 发送json数据请求头 const optionsA = {
url: 'http://localhost:3000/json', method: 'POST', json: true, headers: {
'Content-Type': 'application/json' }, body: {
name: 'xiaoming', age: 21 } } // 发送form表单数据请求头 const optionsB = {
url: 'http://localhost:3000/form', method: 'POST', json: true, headers: {
'Content-Type': 'application/x-www-form-urlencoded' }, form: {
name: 'xiaoming', age: 21 } } // 发送form-data数据请求头 const optionsC = {
url: 'http://localhost:3000/formData', method: 'POST', json: true, headers: {
'Content-Type': 'multipart/form-data' }, formData: {
name: 'xiaoming', age: 21, avatar: {
value: fs.createReadStream('../puppeteer/mi.png'), options: {
filename: 'mi.png', // 文件名称 contentType: 'image/png' // 文件类型 } } } } request(optionsA, (err, response, body) => {
if (err) throw err; console.log(body); }) request(optionsB, (err, response, body) => {
if (err) throw err; console.log(body); }) request(optionsC, (err, response, body) => {
if (err) throw err; console.log(body); })
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/217252.html原文链接:https://javaforall.net
