那些年遇到的ajax相关问题
来源:互联网 发布:php curl 查看请求头 编辑:程序博客网 时间:2024/05/22 16:08
前端开发工作中,最常用到的数据交互技术应该就是ajax了,无论是原生js的,jquery框架,还是mui,angular,vue等相关的ajax方法,都是前端开发人员应该熟练掌握的技术,下面就工作过程中用到的一些ajax方法与大家分享一二,欢迎探讨:
1.最长使用的应该是jQuery封装的ajax方法,废话少说,上菜:
$.ajax({
url:"此处存放你所访问的接口",
data:{“username”:"dawei","sexy":"male"}, //如使用post方式提交数据,此处多用键值对方式传值,
async:true, //默认为true,表示异步,修改为false则为同步,
type:“GET/POST”, //定义请求方式,
dataType:“text/html/javascript/json/xml”,//数据格式,若为跨域访问,且后台接口数据为json格式,设置好了回调,则此处设置jsonp,
success:function(data){
//data即为服务器返回的接口数据,一般情况下若为数组或对象,配合$.each进行循环DOM操作
},
error:function(){
//异常处理
}
})
其他的直接整理了,上图:
2.mui中遇到的ajax怎么处理呢?
这里需要知道两个东西,首页mui的ajax其实是源于jquery,并且属于H5+api使用,所以书写的时候最好加上mui.plusReady(function(){ });其次其对比jquery的ajax方法格式上有点区别,上图:
3. Angular中的ajax技术
Angular的ajax需要依赖$http服务,所以需要再控制器中注入$http,1.4版本以上推荐用新方法,如:
var app=angular.module("myapp",[]);
app.controller("ct",function($scope,$http){
$http({method: 'GET',url: 'cc.php'}).then(function(response){
$scope.info=response.data.data
console.log(response.data)
})
})
//或者
var app=angular.module("myapp",[]);
app.controller("ct",function($scope,$http){
$http.get("cc.php").then(function(response){
$scope.info=response.data.data
console.log(response.data)
})
})
//或者
var app=angular.module("myapp",[]);
app.controller("ct",function($scope,$http){
$http.post("cc.php").then(function(response){
$scope.info=response.data.data
console.log(response.data)
})
})
//或者
var app=angular.module("myapp",[]);
app.controller("ct",function($scope,$http){
$http.jsonp("cc.php?callback=JSON_CALLBACK").then(function(response){
$scope.info=response.data.data
console.log(response.data)
})
})
4. vue里面的ajax技术是什么样子的呢?
1.依靠vue-resourse
确保引入架包
<script type="text/javascript" src="js/vue.min.js"></script>
<script type="text/javascript" src="js/vue-resource.js"></script>
核心代码演示:
new Vue({
el:".list",
data:{
arr:[]
},
mounted: function() {
this.$nextTick(function(){
this.ajax();
})
},
methods:{
ajax:function(){
var _this=this;
this.$http.get("zz.php").then(function(data){
console.log(data.data.T1348649580692)
})
}
}
})
2.依靠vue-axios
同样要引入架包:
<script src="https://cdn.bootcss.com/vue/2.3.4/vue.min.js"></script>
<script src="https://cdn.bootcss.com/axios/0.16.2/axios.min.js"></script>
核心代码:
new Vue({
el:"#app",
data:{
mydata:''
},
methods:{
getdata:function(){
//关键代码
axios.get("cc.php').then(function(res){
console.log(res.data)
})
//或者
axios({
url:'cc.php'
}).then(function(res){
console.log(res.data)
})
//或者
axios.post('cc.php',{
name:'dawei'
}).then(function(res){
console.log(res.data);
})
//或者
axios({
url:'cc.php',
params:{
name:'dawei'
}
}).then(function(res){
console.log(res.data);
})
}
}
})
好啦,先说这些,涉及到跨域问题的解决方案,咱们下次再专门讨论
- 那些年遇到的ajax相关问题
- 那些年,初学Android遇到的问题
- jquery ajax请求相关遇到的问题记录
- yum 遇到的那些问题
- 那些年,我们遇到的傻逼问题
- 那些年遇到的那些css bug
- 那些年遇到的那些坑
- ajax遇到的一些问题
- 初学$ajax()遇到的问题
- AJAX中遇到的问题
- 遇到的数据库相关问题
- ulua遇到相关的问题
- Java遇到的相关问题
- python中遇到的那些问题
- android开发中遇到的那些问题
- 游戏中那些经常遇到的问题
- 测试遇到的那些奇葩问题
- 集成云信遇到的那些问题
- react native45版本开始后,新建应用会抛出UNpackage xxxx
- java中的 instanceof
- 单例设计模式
- 【MySQL数据库】安装MySQL5.7.18图文教程(以windows为例)
- 递归遍历指定深度的树状数据结构
- 那些年遇到的ajax相关问题
- java基础教程:常用对象之日期处理类(24)
- Some python print
- 洛谷 P1031 均分纸牌
- 欢迎使用CSDN-markdown编辑器
- maven web 项目中启动报错java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener
- easyui datagrid自定义按钮列,即最后面的操作列
- JAVA开发短信验证码系统
- Eclipse中使用svn