PHP前端开发

uniapp封装发送请求方式是什么

百变鹏仔 4周前 (11-20) #uniapp
文章标签 方式

随着前端开发的不断发展,前端框架也越来越丰富多样。而其中,uni-app框架的崛起引起了前端开发者的广泛关注。因为它具有了很多原生开发中才有的功能,如无需反复打包、多端发布等。

在uni-app开发过程中,我们常常需要进行网络请求。而为了方便代码复用和编写,我们通常会封装一下请求方式。接下来,我将分享一下如何用uni-app框架封装发送请求方式的方法。

一、封装axios

axios是现代的、基于 Promise 的 HTTP 库,它是uni-app框架中封装网络请求和响应的基础库。我们可以通过axios拦截器来统一添加请求头、请求参数和响应拦截等操作,以下是封装axios的代码示例:

import axios from 'axios';const instance = axios.create({    baseURL: 'https://api.xxx.com', // 请求基础路径    timeout: 10000 // 超时时长});// 添加请求拦截器instance.interceptors.request.use(    config => {        // 添加请求头        config.headers.Authorization = 'Bearer ' + localStorage.getItem('token');        return config;    },    error => {        return Promise.reject(error);    });// 添加响应拦截器instance.interceptors.response.use(    response => {        return response.data;    },    error => {        return Promise.reject(error);    });export default instance;

二、封装请求方法

在封装请求方法时,我们应该考虑到各种情况下的请求方式和参数格式。以下是封装请求方法的示例代码:

import axios from './axios';export const get = (url, data) => {  return new Promise((resolve, reject) => {    axios      .get(url, { params: data })      .then(response => {        resolve(response);      })      .catch(error => {        reject(error);      });  });};export const post = (url, data) => {  return new Promise((resolve, reject) => {    axios      .post(url, data)      .then(response => {        resolve(response);      })      .catch(error => {        reject(error);      });  });};

三、调用封装方法

当我们完成上述封装后,我们可以在需要使用的地方直接调用封装好的方法了。以下是调用方法的示例代码:

import { get, post } from './request'; // 导入封装的请求方法get('/api/news', { page: 1, pageSize: 10 }).then(data => {  console.log(data);});post('/api/login', { username: 'xxx', password: 'xxx' }).then(data => {  console.log(data);});

综上,在uni-app开发过程中,封装发送请求方式是一项非常基础但十分实用的技能。通过上述示例代码,你可以掌握如何封装axios、请求方法和调用方法,从而更加高效地进行uni-app开发。