【码在江湖】前端少侠的json故事(中)ng的json
ng的json

正所谓“人在江湖,身不由己”,在开发之路上前端少侠dk遇到过种种困难,尤其在与后端进行数据对接的时候,不得不逼迫自己以极快的速度去学习和掌握一些奇招怪式,正当他以为就凭一个原生的ajax请求便能对所有数据对接问题迎刃而解之际,更大的问题来了……
这时候,樟哥再一次语重心长地说道:小伙,去找本ng秘笈看看吧,学会$http神功便能配合我进行数据大挪移!
如果我没听错,ng秘笈、$http这特么又是什么鬼新名词啊!
于是,我再一次接受樟哥的建议,在菜鸟教程上打听到了ng秘笈。
经过两天两夜的苦心钻研,我把整本ng秘笈粗略的翻了一遍,对ng神功有了大概的了解:这特么就是把js降龙十八掌十八式合成一掌一式一招致命嘛,练不好的话很容易走火入魔滴啊!
好了,该说点正经事了,什么是ng神功呢?就是angular js,代码江湖里人称ng,$http是ng对ajax封装好的一个服务,用这一项服务可以省下很多用原生js进行ajax请求的代码。
之前我们要自己构造一个请求方法、自行判断请求的状态是否200、自行open()和send(),加入请求的地址……
在ng里,只要一个在$http服务里调用一个get()/post()方法,写入请求的地址,写好success()和error()的方法,这就完成了一个ajax的请求。
下面是一则示例代码
$scope.doRefresh = function() {
$http.get("localhost:8080/dkplus",{
params:{
'tag' : 0,
'id' : 1
}
})
.success(function(data, status, header, config) {
$scope.items = data.data;
})
.error(function(data, status, header, config){
console.log('json解析错误');
})
};
这是我比较熟悉的一种写法,他还有另一种形式,功能一样,我就不多做展示了。
第一句get()里面填入请求的地址,如果请求的同时要带上参数,那就带上params,如果不需要带参数,那就只写$http.get("localhost:8080/dkplus")就够了。
第二句success()是用于请求成功的情况下的,是否成功可以在请求的时候按下f12,查看network一项,看状态是否200或者response里有没有返回json数据。
一般情况下是可以的,如果说存在跨域请求问题,这时候要用到jsonp()的方法进行请求,我们以后会讨论这个问题。
function()里面的data就是++请求回来的数据++,$scope.items = data.data;里第一个data是++接收回来的数据++,第二个data其实是我请求的json里的++一个对象名++。
第三句error()就是用于错误情况的调用,在控制台中显示错误方法被调用了,方便调试程序。
经过两天不眠不休,我自认为自己已经修炼神功,激动不已,于是飞鸽传书给樟哥:
樟哥:
小弟苦心修炼ng神功,而今掌握$http大法,数据大挪移,之日可待!
于是,我们第二天就进行了数据对接,结果就gg了,*“在我电脑上本地测试是可以的啊~%>_<%~”*。
至于是什么问题让这次ng的get()方法数据对接无疾而终呢?预知后事如何,请听下回分解。
微信公众号dkplus,由前端少侠dk搭建的分享平台,主攻web前端,但也游离于设计,乐于分享他的代码故事、ps技巧和ppt技巧。码在江湖,身不由己,珍爱生命,简约设计,我是前端,也是设计。博客园:http://www.cnblogs.com/dkplus/
【码在江湖】前端少侠的json故事(中)ng的json的更多相关文章
- 前端少侠的ps故事
前端少侠的ps故事 正所谓,码在江湖,身不由己.自21世纪前后端分离,代码分工细化以来,前端与设计的合作也变得越来越重要.有人说,如果前端懂设计的话,工作会更快一点.倘若说我入前端半年能算半个前端少侠 ...
- Json.Net 中Linq to JSON的操作
Linq to JSON是用来操作JSON对象的.可以用于快速查询,修改和创建JSON对象.当JSON对象内容比较复杂,而我们仅仅需要其中的一小部分数据时,可以考虑使用Linq to JSON来读取和 ...
- 关于json解析中 解析多重json对象
JSONObject rst = {"AIS-RST":"AIS-00000001","AIS-STATUS":"AIS-0000 ...
- 【码在江湖】前端少侠的json故事(下):jsonp的应用
jsonp的应用 话说天下大势,分久必合,合久必分,代码江湖自进入21世纪以来,前后端分离成为了大势所趋,代码分工更为精细,更为深入,而正所谓码在江湖,身不由己,为了更好的实现需求,程序猿们必须不断学 ...
- 【码在江湖】前端少侠的json故事(上)日月第一击
日月第一击 这是我前端生涯第一次和后台对接,其经历真是苦不堪言,多次绝处逢生,柳暗花明,可就是迟迟见不到那条村子.当然,最后我还是完成了这次对接.下面来聊一聊我这白痴一般的经历. 序章 话说天下大势, ...
- HTTP状态码302、303和307的故事
今日读书,无法理解HTTP302.303.307状态码的来龙去脉,决定对其做深究并总结于本文. <HTTP权威指南>第3章在讲解30X状态码时,完全没有讲清楚为什么要有 ...
- C#无限分级实现,前端WEB页面接收,后台提供层级Json数据
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Te ...
- JS前端取得并解析后台服务器返回的JSON数据的方法
摘要:主要介绍:使用eval函数解析JSON数据:$.getJSON()方法获得服务器返回的JSON数据 JavaScript eval() 函数 eval(string) 函数可计算某个字符串,并执 ...
- Java中net.sf.json包关于JSON与对象互转的问题
在Web开发过程中离不开数据的交互,这就需要规定交互数据的相关格式,以便数据在客户端与服务器之间进行传递.数据的格式通常有2种:1.xml:2.JSON.通常来说都是使用JSON来传递数据.本文正是介 ...
随机推荐
- 中文分词之结巴分词~~~附使用场景+demo(net)
常用技能(更新ing):http://www.cnblogs.com/dunitian/p/4822808.html#skill 技能总纲(更新ing):http://www.cnblogs.com/ ...
- 前端MVVM框架设计及实现
最近抽出点时间想弄个dom模块化的模板引擎,不过现在这种都是MVVM自带的,索性就想自己造轮子写一个简单的MVVM框架了 借鉴的自然还是从正美的Avalon开始了,我2013年写过一个关于MVC MV ...
- 用枚举enum替代int常量
枚举的好处: 1. 类型安全性 2.使用方便性 public class EnumDemo { enum Color{ RED(3),BLUE(5),BLACK(8),YELLOW(13),GREEN ...
- SQL Server 并行操作优化,避免并行操作被抑制而影响SQL的执行效率
为什么我也要说SQL Server的并行: 这几天园子里写关于SQL Server并行的文章很多,不管怎么样,都让人对并行操作有了更深刻的认识. 我想说的是:尽管并行操作可能(并不是一定)存在这样或者 ...
- ASP.NET Core 中文文档 第三章 原理(15)请求功能
作者:Steve Smith 翻译:谢炀(kiler398) 校对:姚阿勇(Dr.Yao).孟帅洋(书缘) 涉及到如何处理 HTTP 请求以及响应的独立 Web 服务器功能已经被分解成独立的接口,这些 ...
- 用C#实现MD5的加密(转载)
方法一 首先,先简单介绍一下MD5 MD5的全称是message-digest algorithm 5(信息-摘要算法,在90年代初由mit laboratory for computer scien ...
- spring mvc 和spring security配置 spring-servlet.xml和spring-security.xml设置
spring-servlet.xml配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmln ...
- spring/spring boot/spring cloud开发总结
背景 针对RPC远程调用,都在使用dubbo.dubbox等,我们也是如此.由于社区暂停维护.应对未来发展,我们准备尝试新技术(或许这时候也不算什么新技术了吧),选择使用了spring ...
- Shiro安全框架入门篇(登录验证实例详解与源码)
转载自http://blog.csdn.net/u013142781 一.Shiro框架简单介绍 Apache Shiro是Java的一个安全框架,旨在简化身份验证和授权.Shiro在JavaSE和J ...
- 简单的学习心得:网易云课堂Android开发第五章SharedPreferences与文件管理
一.SharedPreferences (1)SharedPreferences能够用来保存一些属于基本数据类型的数据. (2)保存数据,删除数据都是由SharedPreferences的内部接口Ed ...