谈谈对 Nodejs 中 接口传参 的理解...

 请求报文:行,头,体

    我们一般使用ajax技术请求接口,按http协议的约定,每个请求都有三个部分:

  • 请求: 保存了请求方式,地址,可以以查询字符串的格式附加小部分数据。

  • 请求:它可以附加很多信息,其中content-type用来约定请求体中保存的数据格式。

    content-type常见有三种取值:

content-type的值表示请求体的数据格式示例
application/x-www-form-urlencode普通键值对象a=2&c=1
application/jsonjson对象{a:1,b:{c:1}}
multipart/form-data上传文件file
  •  请求体: 本次请求携带的参数。至于这些参数到了后端应该如何解析出来,由请求头中的content-type来决定。

 

 

传参途径

方法一:请求行。常见方式如下:

  • 使用ajax技术,通过get方式传参。

  • 在浏览器地址栏中输入接口地址并补充上查询字符串。

方法二:请求体。

  • ajax中的post, put, delete可以从请求体中进行传参。

另外,请求头中的content-type用来告之服务器应该以何种方式去解析请求体中的数据。

后端处理

接口的规则是由后端来定的,它会约定接口:名字,参数,格式,方式。

例如:

名字: /api

参数:name: 用户名,pwd:密码,avatar头像文件。

格式:formdata.

方式:post



名字: /api2

参数:name: 用户名,pwd:密码

格式:application/x-www-form-encoded (普通键值对)

方式:post



名字: /api3

参数:name: 用户名,pwd:密码

格式:application/json

方式:post

总结

传参方式前端 content-type后端框架express
请求行get方式req.query
请求体application/x-www-form-urlencodeapp.use(express.urlencoded()); req.body
请求体application/jsonapp.use(express.json()); req.body
请求体multipart/form-data

1. 引入包 const multer = require('multer');

2. 配置app.post('/apiname', upload.single(), req.body)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值