【前端】封装api的传参

参考博客

封装样式

先在src\api\request.js中进行自定义配置axios、请求拦截和响应拦截

接口举例

// 登录接口
export function login(data) {
  console.log(data);
  return request({
    url: api + "/userLogin/login",
    method: "POST",
    data: data,
  });
}

参数特点

  • data【在body中】和param【在query中】都需要写出来
  • param也可以用$的写法
  • path(路径参数) 直接添加到路径后面

1. 路径参数

  • path(路径参数) 直接添加到路径后面
// 更改状态
export function getUserStatus(id, status) {
  return request({
    url: api + `/sys/user/updateStatus/` + id + `/status/` + status,
    method: "GET",
  });
}

在这里插入图片描述

  • 路径参数和data参数
// 设置角色
export function RoleUser(id, checkedRoles) {
  return request({
    url: api + "/sys/user/grantRole/" + id,
    method: "POST",
    data: checkedRoles,
  });
}

在这里插入图片描述

2. data参数

  • 写在body中的参数
// 添加班级
export function classAdd(data) {
  return request({
    url: moc + "/school/class",
    method: "POST",
    data: data,
  });
}

3. params参数

  • 各个写法是可以相互转换的
1. body中
//在给定folderName路径下上传单个文件
export function uploadFile(folderName, file) {
  return request({
    url: api + "/file/upload",
    method: "POST",
    params: { folderName, file },
  });
}

在这里插入图片描述

2. 写在路径中的params参数
  • 利用 ? 和 & 连接
// 分页查询全部新闻
export function getAllNews(pageNum, pageSize) {
  return request({
    url: moc + `/news/list?pageNum=${pageNum}&pageSize=${pageSize}`,
    method: "get",
  });
}

在这里插入图片描述

3. get方法默认是params参数
// 分页查询全部班级
// GET方法的分页查询要用params
// POST方法的分页查询要用data
export function getClassList(queryParams) {
  return request({
    url: moc + "/school/class/list",
    method: "get",
    params: queryParams,
  });
}

在这里插入图片描述

4. 需要额外的参数

1. 下载指定格式
  • 一定要加上responseType: “blob”,
// 下载
export function downFile(folderName, fileName) {
  return request({
    url: api + "/file/down",
    method: "GET",
    params: { folderName, fileName },
    responseType: "blob",
  });
}

在这里插入图片描述

2. 请求头

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
API方式的具体实现取决于你使用的编程语言和框架。以下以常用的Python语言为例,介绍各种方式的实现方法: 1. 查询字符串: 使用requests库发送GET请求时,可以通过params数来递查询字符串数,例如: ```python import requests url = 'http://example.com/api' params = {'param1': 'value1', 'param2': 'value2'} response = requests.get(url, params=params) ``` 2. 路径数: 使用Flask框架时,可以通过在路由中使用“<variable_type:variable_name>”的方式来定义路径数,例如: ```python from flask import Flask app = Flask(__name__) @app.route('/api/resource/<int:id>') def get_resource(id): # do something with id ... ``` 3. 请求体: 使用requests库发送POST请求时,可以通过data或json数来递请求体数,例如: ```python import requests url = 'http://example.com/api' data = {'key1': 'value1', 'key2': 'value2'} response = requests.post(url, data=data) # 或者 import requests import json url = 'http://example.com/api' json_data = json.dumps({'key1': 'value1', 'key2': 'value2'}) response = requests.post(url, json=json_data) ``` 4. 请求头: 使用requests库发送请求时,可以通过headers数来设置请求头信息,例如: ```python import requests url = 'http://example.com/api' headers = {'Authorization': 'Bearer {token}'} response = requests.get(url, headers=headers) ``` 以上是Python语言中API方式的简单实现方法,其他编程语言和框架也有类似的实现方式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值