【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题

这篇具有很好参考价值的文章主要介绍了【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、自定义封装Axios异步对象和添加拦截器

        因为本项目很多组件需要通过Axios发送一步请求,所以封装Axios对象,自己封装的Axios在后续可以使用axios中提供的拦截器。

1.在src文件夹下创建utils文件夹,再在utils文件夹下创建request.js文件

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript

2.填入以下代码

import axios from "axios";

//创建自定义axios对象
const request = axios.create({
  baseURL: "/", //默认路径
  timeout: 5000, //请求超时
});

//请求拦截器
request.interceptors.request.use(
  (config) => {
    //请求拦截
    return config;
  },
  (error) => {
    //出现异常
    return Promise.reject(error);
  }
);

//响应拦截
request.interceptors.request.use(
  (response) => {
    return response;
  },
  (error) => {
    return Promise.reject(error);
  }
);

export default request; //导出自定义的axios

二、调用后台服务接口API封装(浅试)

1.在public文件夹下新建db.json文件,并添加数据。

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript

[
    {"name":"hh","age":"18"},
    {"name":"jj","age":"18"},
    {"name":"kk","age":"18"}
]

2.在src文件夹下新建api文件夹,再在api文件夹下新建test.js文件,用来封装测试调用的接口。并在test.js文件里填入以下代码:

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript

/**
 * 封装调用接口
 */
//同import axios from "@/utils/request";
import request from "@/utils/request";

export default {
  getList() {
    const req = request({
      method: "get",
      url: "/db.json",
    });
    return req;
  },
};

3.打开components下的HelloWorld.vue。在<script>中添加以下代码:

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript

import testApi from "@/api/test";
 data() {
    return {
      list: [],
    };
  },
  created() {
    this.fetchData();
  },
  methods: {
    fetchData() {
      testApi.getList().then( response => {
        console.log("get3", response.data);
        this.list = response.data;//将数据给list数组
      });
    },
  },

4.将顶部的<h1></h1>标签里的“msg”改成“list”,如下图所示;

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript

5.运行,若页面变成下面的样子则说明axios对象和api封装成功。

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript

三、跨域问题及解决

1.跨域问题如何产生:当前后端的协议、域名、端口三者中有一个不同就会产生跨域问题。

 2.解决:

  • 方式1:代理请求,将api请求通过代理服务器请求到api服务器上。
  • 方式2:开发环境中,在vue.config.js文件中使用devSer.proxy进行代理配置。https://cli.vuejs.org/zh/config/#devserver-proxy

方式2:在vue.config.js文件中新增以下代码                       

【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题,前端web,vue.js,前端,javascript文章来源地址https://www.toymoban.com/news/detail-725306.html

//const { defineConfig } = require("@vue/cli-service");
module.exports = {
  devServer: {
    port: 8888, //如果端口被占用则+1
    host: "localhost",
    https: false, //协议
    open: true, //启动服务时自动打开浏览器
    proxy: {
      //开发环境代理配置
      "/dev-api": {
        //目标服务器地址
        target: "http://localhost:8001",
        changeOrigin: true, //开启代理服务器
        pathRewrite: {
          //将请求地址前缀、dev-api替换为空的
          "^/dev-api": "",
        },
      },
    },
  },
  lintOnSave: false, //关闭格式检查
  productionSourceMap: false, //打包时不生成.map文件
};

到了这里,关于【vue会员管理系统】篇三之自定义Axios、初试后台接口、跨域问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 会员管理系统实战开发教程06-会员充值

    我们上篇讲解了会员开卡的操作,有了会员卡之后日常就是给会员进行充值,充值的逻辑是对余额进行累加,而且要记录充值的情况。 打开控制台,点击+号创建数据源 输入数据源名称充值记录 点击编辑添加字段 先添加充值金额字段,类型选择数字 再添加充值日期字段,类

    2024年02月10日
    浏览(53)
  • 超市会员管理系统

    目录 一、需求分析 二、问题描述 三、总体设计 四、详细设计 1)数据类型 2) 函数名 3)登陆界面 4)主界面 5)界面设计 (1)系统说明 (2) 输入会员信息  (3) 显示会员信息  (4)查询会员信息 (5) 插入会员信息 (6)删除会员信息 (7)修改会员信息 (8)会员消费

    2024年02月09日
    浏览(50)
  • 【会员管理系统】篇一之项目预热

    vue.js  vueCLI 3.x   Axios   babel     EcmaScript6  Eslint  Mock.js   Easy-Mock           Element UI    Vuex (1)新建文件夹,在vscode中打开,使用终端 npm init -y (2)安装mock.js    npm  install mockjs (3)新建demo1.js文件,在其中编写代码 运行 node demo1.js 也可使用  console.log(JSON.stringif

    2024年02月07日
    浏览(41)
  • JAVA小项目之超市会员管理系统

    1、会员类Member     (1)姓名        name:String     (2)卡号        cardId:int     (3)密码        password:String     (4)积分        score:int     (5)开卡日期    registDate:String      2、会员管理类     (1)所有会员(卡)--集合:List  ArrayListMember      

    2024年02月07日
    浏览(46)
  • PHP结课报告 《会员信息管理系统》

    《动态网站设计与开发》 考试改革报告 项目名称:        会员注册管理系统         专业班级: 计算机科学与技术 学生学号:        *************           学生姓名:            ***              日    期:          2022.12.12          目  录 1.系统开发背

    2024年02月11日
    浏览(44)
  • 【VUE学习】权限管理系统前端vue实现4-自定义icon实现

    template 部分:定义了组件的模板内容。在这里,使用了 svg 标签来创建一个 SVG 图标元素,并添加了一个 use 元素来引用具体的图标。 :xlink:href 属性使用了绑定语法,将 iconName 绑定为 use 元素的 xlink:href 属性的值。 script setup 部分:使用了 Vue 3 的 script setup 语法,用于编写组件

    2024年02月13日
    浏览(44)
  • 干洗店收银系统、上门洗鞋小程序,干洗店会员管理系统

    干洗店收银系统、上门洗鞋小程序,干洗店会员管理系统可以增加洗衣店的优势,让干洗店回本快,通过发行会员卡卡促销回收资金带来效益,减少投资压力。 干洗店管理软件功能介绍 预约上门收衣 智能提醒+员工手机APP抢单+APP拍照同步上传 快速完成订单 系统定价+系统

    2024年02月08日
    浏览(46)
  • Android美容美发理发店会员管理系统uniapp小程序

    本论文中实现的美容美发会员将以用户核心的日常信息维护工作为主,主要涵盖了个人中心,会员管理,会员等级管理,充值信息管理,扣费信息管理,项目类型管理,美食服务管理,服务预约管理,产品类型管理,美容产品管理,订单信息管理,入库信息管理,礼品信息管

    2024年03月11日
    浏览(72)
  • 数字化棋牌室 | 会员管理预约系统 | 棋牌室小程序

    棋牌室 在城市与农村都是部分老年人与年轻人的经常去的娱乐场所,以前这些场所里总是挤满了人,但现在越来越多的棋牌室即使环境装修的漂亮、设备高端完善等依然面对流量难题及管理难题,同时由于棋牌室具有社区属性,因此也有不少商家打出品牌多地开分店,打造娱

    2024年02月10日
    浏览(51)
  • 中文编程开发语言工具编程实际案例:美发店会员管理系统软件编程实例

    中文编程开发语言工具编程实际案例:美发店会员管理系统软件编程实例 中文编程开发语言工具编程实际案例:美发店会员管理系统软件编程实例。 软件功能: 1、系统设置:参数设定,账号及权限设置,系统初始化,卡类型设置,积分清零等。 2、会员信息登记:可以刷卡

    2024年02月07日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包