angularJs中$http获取后台数据的实例讲解


Posted in Javascript onAugust 08, 2018

1.html

<div ng-app="module" ng-controller="ctrl">
 <table border="1" width="600">
  <tr>
   <td>网站名称</td>
   <td>网址</td>
  </tr>
  <tr ng-repeat="v in data">
   <td>{{v.name}}</td>
   <td>{{v.url}}</td>
  </tr>
 </table>
</div>
<script>
 var m = angular.module('module', []);
 //注入http服务
 m.controller('ctrl', ['$scope', '$http', function ($scope, $http) {
  $http({
   method:'get', //get请求方式
   url:'1.php' //请求地址
  }).then(function(response){
   //成功时执行
   console.log(response);
   $scope.data = response.data; //得到请求的数据
  },function(response){
   //失败时执行 
   console.log(response);
  });
 }]);
</script>

1.php

<?php
$data = [
 [ 'name' => '百度', 'url' => 'www.baidu.com' ],
 [ 'name' => '腾讯', 'url' => 'www.qq.com' ],
];
echo json_encode($data,JSON_UNESCAPED_UNICODE);

上面是最简单的$http获取后台数据实例,假如一个页面中要异步加载一个后台文件好几次,那么是不是也要请求服务好几次呢?显然这样会使页面的加载出现迟钝,那么,我们可以通过缓存操作来减少服务器压力,使其尽快显示页面数据,那么,具体怎么做呢?很简单,在$http 中添加cache:true, ,即可解决,再刷新页面的时候,只会显示一次重复请求的数据。

$http({
   method:'get',
   url:'1.php',
   cache:true, //避免多次请求后台数据
  }).then(function(response){
   //成功时执行
   console.log(response);
   $scope.data = response.data;
  },function(response){
   //失败时执行 
   console.log(response);
  });

当然,像jquery的ajax请求那样,angularjs也可以进行简写,

m.controller('ctrl', ['$scope', '$http', function ($scope, $http) {
 //post方式
 //$http.post('1.php',{id:1})参数里可加属性
  $http.post('1.php').then(function(response){
   //成功时执行
   console.log(response);
   $scope.data = response.data;
  });
 }]);
m.controller('ctrl', ['$scope', '$http', function ($scope, $http) {
 //get方式
 //$http.get('1.php',{cache:true}) 参数里可加属性
  $http.get('1.php').then(function(response){
   //成功时执行
   console.log(response);
   $scope.data = response.data;
  });
 }]);

最后,来说下 $http服务之后台接收POST数据的几种方式:

<div ng-app="module" ng-controller="ctrl"></div>
<script>
 var m = angular.module('module', []);
 m.controller('ctrl', ['$scope', '$http', function ($scope, $http) {
  //第一种方式
/*  $http({
   method:'post',
   url:'1.php',
   data:{id:1,name:'后盾人'}
  }).then(function(response){
   console.log(response.data);
  })*/
 //第二种方式
  $http({
   method:'post',
   url:'1.php',
   data:$.param({id:1,name:'后盾人'}),
   headers:{'Content-type':'application/x-www-form-urlencoded'}
  }).then(function(response){
   console.log(response.data);
  })
 }]);
</script>
<?php
#第一种处理方法
//$content = file_get_contents('php://input');
//print_r(json_decode($content,true));

#第二种方式
print_r($_POST);

以上这篇angularJs中$http获取后台数据的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浏览器常用高宽的jquery插件
Feb 24 Javascript
jquery 插件学习(一)
Aug 06 Javascript
jQuery jcrop插件截图使用方法
Nov 20 Javascript
Jquery获取元素的父容器对象示例代码
Feb 10 Javascript
js实现网页随机切换背景图片的方法
Nov 01 Javascript
JavaScript prototype属性详解
Oct 25 Javascript
浅谈js数组和splice的用法
Dec 04 Javascript
AngularJS 使用ng-repeat报错 [ngRepeat:dupes]
Jan 19 Javascript
利用jQuery实现简单的拖曳效果实例代码
Oct 20 jQuery
layer.open 按钮的点击事件关闭方法
Aug 17 Javascript
Vue.js的模板语法详解
Feb 16 Javascript
微信小程序吸底区域适配iPhoneX的实现
Apr 09 Javascript
JavaScript常见JSON操作实例分析
Aug 08 #Javascript
vue.js与后台数据交互的实例讲解
Aug 08 #Javascript
JS实现自定义弹窗功能
Aug 08 #Javascript
vue.js提交按钮时进行简单的if判断表达式详解
Aug 08 #Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 #jQuery
JS+HTML5实现获取手机验证码倒计时按钮
Aug 08 #Javascript
JS的Ajax与后端交互数据的实例
Aug 08 #Javascript
You might like
php 向访客和爬虫显示不同的内容
2009/11/09 PHP
php 在windows下配置虚拟目录的方法介绍
2013/06/26 PHP
extjs 学习笔记(一) 一些基础知识
2009/10/13 Javascript
js中if语句的几种优化代码写法
2011/03/12 Javascript
Jquery实现简单的动画效果代码
2012/03/18 Javascript
JavaScript学习笔记之JS事件对象
2015/01/22 Javascript
nodejs简单实现中英文翻译
2015/05/04 NodeJs
使用javascript将时间转换成今天,昨天,前天等格式
2015/06/25 Javascript
javascript数组常用方法汇总
2016/09/10 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
javascript 判断当前浏览器版本并判断ie版本
2017/02/17 Javascript
JavaScript实现滑动导航栏效果
2017/08/30 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
移动端自适应flexible.js的使用方法(不用三大框架,仅写一个单html页面使用)推荐
2019/04/02 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
vuex 多模块时 模块内部的mutation和action的调用方式
2020/07/24 Javascript
JS实现百度搜索框
2021/02/25 Javascript
Python在Windows和在Linux下调用动态链接库的教程
2015/08/18 Python
python安装教程 Pycharm安装详细教程
2017/05/02 Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
2018/01/04 Python
解决安装python库时windows error5 报错的问题
2018/10/21 Python
Python中新式类与经典类的区别详析
2019/07/10 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
Python 如何在字符串中插入变量
2020/08/01 Python
Python爬虫之Spider类用法简单介绍
2020/08/04 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
财政局长自荐信范文
2013/12/22 职场文书
青年文明号事迹材料
2014/01/18 职场文书
打架检讨书300字
2014/02/02 职场文书
手机被没收检讨书
2014/02/22 职场文书
安全承诺书范文
2014/03/26 职场文书
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
2014年小学教师工作总结
2014/11/10 职场文书
爱心捐书倡议书
2015/04/27 职场文书
2015年学生管理工作总结
2015/05/26 职场文书