-
JSON解析 eval和JSON.parse() 在代码中使用eval是很危险的,特别是用它执行第三方的JSON数据(其中可能包含恶意代码)时,尽可能使用JSON.parse()方法解析字符串本身,该方法还可以捕捉JSON中的语法错误。 JSON在线校验工具: JSONLint(jsonlint.com) JSON为javascript object notation,即为javascript对象表示法,他一般用来存储和交换传递信息,他独立于javascript存在,因为采用键值对的方式,所以不仅便于人书写和理解,并且利于机器解析。因而在ajax技术中被当做服务器端的返回数据格式,而返回的的数据在前端如何被解析?技术上可以使用eval()函数和JSON.parse(函数两种方法,eval()接受字符串,并将这个字符串当成js代码去在eval所在的位置去执行,从而会欺骗词法作用域,让js引擎前期关于作用域的优化大打折扣,甚至无效,更重要的是因为这个字符串会被当成代码去执行,所以存在着危险性,特别是在接受第三方的JOSN对象时。所以在这里推荐使用JSON.parse()方法,这个方法会检测JSON对象里是否有非法代码,从而更加安全。在ajax中我们总是会用代码:var request=new XMLHttpRequest(); request.open("get","?.php?字段="+content,true);request.send();然后通过检测request的readyStatus属性和status属性来判断服务器是否已经正确的完成响应,if(request.readyState===4&&request.status===200){ //对request.reponseText(无论是JSON还是纯字符串形式)进行一些操作。 } 而在open和send中间往往还有一步就是设置请求头:request.setRequestHeader("");查看全部
-
一.JSON基本概念 1、javaScript对象表示法(javaScript object notation) 2、json是存储和交换文本信息的语法,类似xml。它使用键值对的方式来组织,易于人们阅读和编写,同时也易于机器解析和生成。 3、json是独立于语言的,也就是说不管什么语言,都可以解析json,只需要按照json的规则来就行。 4、xml也是一种传递信息的方法。 二、json和xml比较 1、json的长度和xml格式比起来很短小 2、json读写的速度更快。 3、json可以使用javaScript内建的方法直接进行解析,转换成javaScript对象,非常方便。 三、json语法规则 1、json数据的书写格式是:名称/值对。 名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开,比如 "name":"郭靖"。 和javaScript对象表示法不同,javaScript对象表示法的键值不需要用引号,但是json的键值要用引号。 2、json的值可以是下面这些类型: (1)数字(整数或浮点数),如123,1.23 (2)字符串(在双引号中) (3)逻辑值(true或false) (4)数组(在方括号中) (5)对象(在花括号中) (6)null 3、json典型例子: { "staff":[ {"name":"洪七","age":70}, {"name":"郭靖","age":35} ] }查看全部
-
readyState 状态 状态说明 (0)未初始化 此阶段确认XMLHttpRequest对象是否创建,并为调用open()方法进行未初始化作好准备。值为0表示对象已经存在,否则浏览器会报错--对象不存在。 (1)载入 此阶段对XMLHttpRequest对象进行初始化,即调用open()方法,根据参数(method,url,true)完成对象状态的设置。并调用send()方法开始向服务端发送请求。值为1表示正在向服务端发送请求。 (2)载入完成 此阶段接收服务器端的响应数据。但获得的还只是服务端响应的原始数据,并不能直接在客户端使用。值为2表示已经接收完全部响应数据。并为下一阶段对数据解析作好准备。 (3)交互 此阶段解析接收到的服务器端响应数据。即根据服务器端响应头部返回的MIME类型把数据转换成能通过responseBody、responseText或responseXML属性存取的格式,为在客户端调用作好准备。状态3表示正在解析数据。 (4)完成 此阶段确认全部数据都已经解析为客户端可用的格式,解析已经完成。值为4表示数据解析完毕,可以通过XMLHttpRequest对象的相应属性取得数据。 概而括之,整个XMLHttpRequest对象的生命周期应该包含如下阶段: 创建-初始化请求-发送请求-接收数据-解析数据-完成 POST请求要设置: request.setRequestHeader("Content-type","application/x-www-form-urlencoded");查看全部
-
PHP测试工具 fiddler工具,可看网站中的“ Fiddler工具使用" (http://www.imooc.com/learn/37)课程,后台测试接口工具 Content-Type:application/x-www-form-urlencoded 的正确设置。。 fiddler可用于调试服务器代码(无需客户端代码)。 Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。 Fiddler 要比其他的网络调试器要更加简单,因为它不仅仅暴露http通讯还提供了一个用户友好的格式。 fiddler可以监听电脑上所有的HTTP请求(GET和POST等)监听他们传入的值和返回的值。后台测试接口工具。 使用:右边栏有compose都标签页。输入刚才地址后excuse他。双击左栏的记录。用post请求的时候要用到contentType:application/x-www-form-urlencodeed,告诉服务器是一个post请求,并且是写在url里面。 在右下栏的requestbody写上请求正文。 Content-Type:application/x-www-form-urlencoded 一、chorome的postman,作用与视频中的fildder工具相同,可用于测试服务器代码(无需客户端代码)。 二、fildder 监听电脑所有的http请求,可以监听发出的值,和响应回来的值,还可以去模拟。 三、慕课网课程:接口测试之入门篇http://www.imooc.com/learn/738,有说到postman和fildder.查看全部
-
在Dreamweaver中配置web服务器应用于本地测试 1、服务器启动 在下面xampp的安装文件下启动xampp-control.exe,修改监听端口为8080; 2、建立站点 站点的名字 在htdocs中新建站点文件 站点的URL选择:xmapp/htdocs/站点文件 基本服务器配置:服务器名称;xampp 连接网络:本地/网络 文件夹:xmapp/htdocs/站点文件 webURL http://localhost:8080/ajaxdemo/ 高级选项: 服务器模型:后台语言 点击保存后 选择测试 再点击保存 sublime: 1、先开启xampp运行Apache。注意:xampp安装不要改配置文件地址,改了就出错了! 2、找到配置文件,并在xampp/htdocs下面新建一个文件夹作为你的根目录,譬如:ajax 3、在根目录随便创建一个HTML文件,输入文字以备测试,譬如:practise.html 4、打开chrome浏览器,输入:localhost:8080/根目录/HTML文件名,如果可以出现就说明运行本地服务器成功,譬如:localhost:8080/ajax/practise.html查看全部
-
php 是一种创建动态交互性站点的服务器端脚本语言 XAMMP下载地址:https://www.apachefriends.org/download.html查看全部
-
服务器响应成功时得到通知: readyState属性 0:请求还未初始化,open还没有调用 1:服务器连接已建立,open已经调用了 2:请求已接收,也就是接收到头信息了 3:请求处理中,也就是接收到响应主体了 4:请求已完成,且响应已就绪,也就是响应完成了 获取响应值: responseText 获取字符串形式的响应数据 responseXML 获得XML形式的响应数据 (一般用JSON) status和statusText 以数字和文本形式返回HTTP状态码 getAllResponseHeader() 获取所有的响应报头 getResponseHeader() 查询响应中的某个字段的值 第一步 var request=new XMLHttpRequest(); new一个XHR对象; 第二步 request.open('GET','get.php',true); open一个方法 第三步 request.send(); 发送数据 第四步 request.onreadystatechange=function(){ if(request.readyState===4&&request.status===200){ //做一些事情,request.responseText} } 对响应进行监听:判断响应结果查看全部
-
一、xhr发送请求 1、open方法: (1)参数: 1)method:发送请求方法,get方式还是post方式,不区分大小写,一般使用大写。 2)url:请求地址,可以使用相对地址,也就是相对文档的地址,也可以使用绝对地址。 2)async:请求同步/异步,一般使用异步请求,这个参数就是true,如要使用同步的话,就是false。默认的是true(异步),所以,如果是异步请求的话,这个参数可以不写。 2、send方法: (1)send方法将请求发送到服务器上 (2)参数: 1)string: ①使用get请求时,实际是没有主体的,所有的参数都拼在url中,所以send参数可以不填,或者填写null。 ②post请求时,send请求一定要有参数。 3、request.setRequestHeader()方法 (1)设置http的头信息,告诉web服务器要发送一个表单的话,设置Content-type为application/x-www-form-urlencoded。 (2)Content-type有2种,一般用application/x-www-form-urlencoded,一般如果不发送文件,都采用这种方式。 (3)request.setRequestHeader()要写在open()和send()中间,否则会抛出异常。查看全部
-
http状态码:1开头信息类表示手打搜web浏览器请求,正在进一步处理中 2开头的,成功,表示用户请求被正确接受,理解和处理,如 200 3开头的,重定向,表示请求没有成功,客户必须采取进一步的动作 4开头的:客户端错误,表示客户端提交的请求有错误404 5开头的:服务器错误,表示服务器不能完成对请求的处理500 一个完整的http请求过程: 1.建立TCP连接 2.web浏览器向web服务器发送请求 3.web浏览器发送请求头信息 4.web服务器应答 5.web服务器发送应答头信息 6.web服务器向浏览器发送数据 7.web服务器关闭TCP连接查看全部
-
if(window.XMLHttpRequest){ request=new XMLHttpRequest(); //IE7+,Firefox,Chrome,Opera,Safari }else{ request=new ActiveXObject("Microsoft.XMLHTTP");//IE6,IE5 }查看全部
-
步骤: 1、利用html+css来实现页面,表达信息; 2、用XMLHttpRequest和web服务器进行数据的异步交换 3、运营js操作DOM,实现动态局部刷新; XMLHttpRequest对象的出现分割了同步和异步。XMLHttpRequest出现之前是同步的,出现之后是异步的。 同步:页面请求实时传给服务器,导致必填数据没有填的时候,要回到页面上重新从头填写,耗时长、客户体验差。 异步:在页面必填项写上必填选项,不用通过传给服务器判断必填内容是否已经填写完整,耗时短、用户体验强。查看全部
-
添加服务器头。查看全部
-
jQuery Ajax 设定值查看全部
-
xhrObj.responseText = JSON;查看全部
-
概念介绍2:HTTP请求 一个HTTP请求一般由四个部分组成 1:HTTP请求的动作或者方法,比如是GET或者POST请求。 1):GET请求. 一般用于信息获取。(一般用来查询) 使用URL传递参数 对发送的数据信息有限制,一般在2000个字符。 2):POST请求。 一般用于修改服务器上的资源。(一般用来修改数据) 对与大小没有限制。 2:正在请求的URL。你要知道你请求的地址是什么。 3:请求头,包含一些客户环境,身份验证信息等等。 4:请求体,也就是请求正文,这里面包含查询的字符串,表单信息等等。查看全部
举报
0/150
提交
取消