您现在的位置是:网站首页> 编程资料编程资料
第一次在Vue中完整使用AJAX请求和axios.js的实战记录_vue.js_
2023-05-24
410人已围观
简介 第一次在Vue中完整使用AJAX请求和axios.js的实战记录_vue.js_
零、AJAX
0.0 npm install express
npm i express # 安装 也可以使用cnpm npm init --yes # 查看是否安装到当前环境中

0.1 express.js
// express.js const { response } = require('express'); const express = require('express'); const app = new express(); //app.post('/server', (request, response) => { // // 设置响应头 设置允许跨域 // response.setHeader("Access-Control-Allow-Origin", "*"); // // 设置响应体 // response.send("HELLO ZHUBA POST"); // }); app.post('/server', (request, response) => { // 设置响应头 设置允许跨域 重点注意此处 response.setHeader("Access-Control-Allow-Origin", "*"); // 设置响应体 response.send("HELLO ZHUBA"); }); app.listen(8000, () => { console.log("服务已经启动, 8000端口监听中...."); }); // 先运行 0.2 GET-HTML
// GET-HTMLAJAX GET 请求
Test:

0.3 POST-HTML
需要在express.js中为app添加POST方法(和get一致),并重启启动,(正在运行js脚本修改后需要重新启动)
app.post('/server', (request, response) => { // 设置响应头 设置允许跨域 response.setHeader("Access-Control-Allow-Origin", "*"); // 设置响应体 response.send("HELLO ZHUBA POST"); }); // POST-HTMLAJAX POST 请求
注意此处:

Test:

一、导入模块
1.1方法一、下载axios.js,并放入vue工程plugins目录下
在main.js引入axios
import axios from './plugins/axios
在相应页面中使用
created() { const _this = this axios.get('http://localhost:8181/book/findAll/0/6').then(function(resp){ console.log(resp); _this.tableData = resp.data.content _this.pageSize = resp.data.size _this.total = resp.data.totalElements }) } 1.2方法二使用包管理器安装axios
安装
// 注意此时只安装在该工作区 npm install --save axios cpnm install --save axios
在相应页面声明axios变量
const axios = require('axios');注意,是在export default外声明全局变量

使用和之前一样在相应页面
1.3方法三直接引入CDN
二、实际应用
2.1以为和风天气API实践:
[和风天气](城市信息查询 - API | 和风天气开发平台 (qweather.com))

2.2数据接口如下:
https://geoapi.qweather.com/v2/city/lookup?location=${city}&key=${key} // city为字符如'北京' // key为控制台key https://devapi.qweather.com/v7/weather/now?location=${data}&key=${key} // 此处data为前面一个得到的地址的id,如'北京'为:101010100 2.3实现:
// 导入axios const axios = require("axios"); // 异步函数 async beforeMount() { } async beforeMount() { // 设置好参数此处写死的,可以用Vue传参等 let key = "fe5812813b8449bb8b4b6ec490ff5cf1"; let city = "湘潭"; // 拼接好请求 把其输入浏览器导航有数据即可,结果参考下图 // https://geoapi.qweather.com/v2/city/lookup?location=湘潭&key=fe5812813b8449bb8b4b6ec490ff5cf1 let httpUrl1 = `https://geoapi.qweather.com/v2/city/lookup?location=${city}&key=${key}`; }, 
async beforeMount() { // 设置好参数此处写死的,可以用Vue传参等 let key = "fe5812813b8449bb8b4b6ec490ff5cf1"; let city = "湘潭"; // 拼接好请求 把其输入浏览器导航有数据即可,结果参考下图 // https://geoapi.qweather.com/v2/city/lookup?location=湘潭&key=fe5812813b8449bb8b4b6ec490ff5cf1 let httpUrl1 = `https://geoapi.qweather.com/v2/city/lookup?location=${city}&key=${key}`; // 发起请求注意此处的await, 不加上,只能得到pending: 初始状态,不是成功或失败状态,如下图 let data1 = await axios.get(httpUrl1); // =Promise{} }, 
promise 要用t
相关内容
- 详细聊聊前端如何实现token无感刷新(refresh_token)_vue.js_
- Vue使用ajax(axios)请求后台数据的方法教程_vue.js_
- Vue实现简单可扩展甘特图的方法详解_vue.js_
- Vue项目代码之路由拆分、Vuex模块拆分、element按需加载详解_vue.js_
- WAPI与Wi-Fi是什么意思.以及有什么区别_安全其它_网络安全_
- HSRP(热备份路由器协议)的详细介绍_安全其它_网络安全_
- 使用组策略增强IE安全性的设置方法_安全其它_网络安全_
- 几种web扫描工具 用于测试还是很不错的 _安全其它_网络安全_
- 收集的比较齐全的黑链代码大全_安全其它_网络安全_
- 复杂背景的验证码识别破解 以Discuz的动画验证码为例。_安全其它_网络安全_
