axios发送post请求
时间:2021-08-19
本文章向大家介绍axios发送post请求,主要包括axios发送post请求使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>axios</title>
</head>
<body>
<div id="app"></div>
<script type= "text/javascript" src="./node_modules/vue/dist/vue.js"></script>
<script type="text/javascript" src="./node_modules/axios/dist/axios.js"></script>
<script type="text/javascript">
var App = {
data(){
return{
msg:''
}
},
template:`
<div>
<button @click='sendAjax'>发Get请求</button>
<h3>{{msg}}</h3>
<button @click='sendAjaxByPost'>发Post请求</button>
<h3>{{msg}}</h3>
</div>
`,
methods:{
sendAjax(){
axios.get('http://127.0.0.1:8081/create')
.then(res=>{
console.log('这是成功',res);
console.log('这是成功res.data',res.data)
console.log('这是typeof',typeof res.data)
this.msg = res.data;
// this.msg = '你好啊';
})
.catch(err=>{
console.log('这是错误',err)
})
},
sendAjaxByPost(){
// var params = new URLSearchParams() ;
// params.append('name','alex');
axios.post('http://127.0.0.1:8800/create',{"name":"alex"}).
then( function(res) {
console.log(res);
}).catch(err=>{
console.log(err);
})
}
}
}
new Vue({
el:"#app",
data(){
return {
}
},
components:{
App
},
template:'<App/>'
})
</script>
</body>
</html >
会报错
post请求,发送数据会报错,不能直接携带数据,要加URLSearchParams处理下才行
var params = new URLSearchParams() ;
params.append('name','alex');
修改之后
sendAjaxByPost(){
var params = new URLSearchParams() ;
params.append('name','alex');
axios.post('http://127.0.0.1:8800/create',{"name":"alex"}).
then( function(res) {
console.log(res);
}).catch(err=>{
console.log(err);
})
}
由于axios在整个项目中是局部作用域,避免多次重复导入axios模块,可以用vue和它绑定一起
1,//方式1: 解决this的指向问题,在vue中用函数建议使用箭头函数
2,var _this = this // //解决this指向问题方法二
<!-- vue和axios都是全局的对象未来axios会成为局部作用域-->
<script type="text/javascript">
//挂载Vue.prototype.$axios = axios;使用插件
Vue.prototype.$axios = axios;
//配置公共的ur1
axios.defaults.baseURL = 'http://127.0.0.1:8800';
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>axios</title>
</head>
<body>
<div id="app"></div>
<script type= "text/javascript" src="./node_modules/vue/dist/vue.js"></script>
<script type="text/javascript" src="./node_modules/axios/dist/axios.js"></script>
<!-- vue和axios都是全局的对象,未来axios会成为局部作用域-->
<script type="text/javascript">
//挂载Vue.prototype.$axios = axios;使用插件
Vue.prototype.$axios = axios;
//配置公共的ur1
axios.defaults.baseURL = 'http://127.0.0.1:8800';
var App = {
data(){
return{
msg:''
}
},
template:`
<div>
<button @click='sendAjax'>发Get请求</button>
<h3>{{msg}}</h3>
<button @click='sendAjaxByPost'>发Post请求</button>
</div>
`,
methods:{
sendAjax(){//方式1: 解决this的指向问题,在vue中用函数建议使用箭头函数
axios.get('http://127.0.0.1:8081/create')
// this.$axios.get('http://127.0.0.1:8081/create') // 挂载之后使用this.$axios
// .then(res=>{ //方式1: 解决this的指向问题,在vue中用函数建议使用箭头函数
.then(function(res){ // 传统函数function(res) this变成了windows对象了 , 初学者容易犯的错
console.log('这是成功',res);
console.log('这是成功res.data',res.data)
console.log('这是typeof',typeof res.data)
console.log('这是this',this) // 传统函数function(res) this变成了windows对象了
// 传统函数function(res) this变成了windows对象了, 初学者容易犯的错 解决this指向问题
this.msg = res.data;
// this.msg = '你好啊';
})
.catch(err=>{
console.log('这是错误',err)
})
},
sendAjaxByPost(){
var _this = this // //解决this指向问题方法二
var params = new URLSearchParams() ;
params.append('name','alex');
// axios.post('http://127.0.0.1:8800/create',{"name":"alex"}).
this.$axios.post('http://127.0.0.1:8800/create',{"name":"alex"}).
then( function(res) { // 传统函数function(res) this变成了windows对象了
console.log(res);
_this.msg = res.data; //解决this指向问题方法二
}).catch(err=>{
console.log(err);
})
}
}
}
new Vue({
el:"#app",
data(){
return {
}
},
components:{
App
},
template:'<App/>'
})
</script>
</body>
</html >
写入自己的博客中才能记得长久
原文地址:https://www.cnblogs.com/heris/p/15161207.html
- b这样去设计 URL,可以提高网站的访问量
- 程序员必知之SEO
- 进程监控工具supervisor 启动Mongodb
- 祭奠那些年,我弃坑的开源轮子
- 这些奇技浮巧,助你优化前端应用性能
- Stepping.js——两步完成前后端分离架构设计
- 我的职业是前端工程师【十】客户端存储艺术:数据存储与模型
- 【开源】2md:将复制的内容、网页转成 markdown
- React Native 持续部署实践— push 代码构建出新版的 Growth
- 技巧 - 如何好一个 Git 提交信息及几种不同的规范
- React、Vue、Ember 及其他前端开发者,请暂缓更新到 Chrome 59 浏览器
- 微软开源全新的文档生成工具DocFX
- 使用 MimeKit 和 MailKit 发送邮件
- 使用 React Native 重写大型 Ionic 应用后,我们想分享一下这八个经验
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 查找算法笔记(C++版)
- C++基础 指针使用注意
- FreeRTOS移植-基于STM32F407
- 感知机的股票预测算例及python代码实现 | 山人聊算法 | 5th
- C++基础 智能指针
- 排序算法笔记(C++版)
- 算法集锦(17) | 推荐系统 | 基于机器学习的商品定价系统
- C++基础 STL简介
- 基于层次聚类的工业数据分析研究
- 详细记录了python爬取小说《元尊》的整个过程,看了你必会~
- C++基础 静态库与动态库
- 《重构-代码整洁之道TypeScript版》第3天
- 可读代码编写炸鸡十 - 保持单纯
- C++基础 多线程笔记(二)
- JVM详解之:HotSpot VM中的Intrinsic methods