发表于: 2017-04-13 21:00:23

3 1243


今日完成:

学习任务五,微信效课堂的推送,修改任务四的bug;

明日计划:

继续任务五并完成;

问题:

1.网上看了好几个demo,都是在调用open()之前,首先定义onreadystatechange 事件。我的理解就是先接收服务器的返回数据,然后才是请求数据。感觉这样逻辑不通,不应该是先向服务器发出了请求,服务器才会回应我吗?

查了下网上的解释,这样的目的是的确保跨浏览器兼容性,否则将无法接收readyState属性为0和1的情况。

2.用webstorm写好css和js文件之后,一直请求数据不成功。看了衔接的地址,是locahost:63342/。。。。;查了资料得知这是因为webstorm自己生成了一个虚拟服务器,固定的端口就是63342;把任务相关文件都放到nigix文件中去,任务网页改为index.html后,地址的问题解决。

3.解决问题2后还是返回404,期间重装了nigix,重写了代码,重新配置nigix,都不行。晚上听师兄分享时,突然反应过来:我在js中用post请求的URL为:  /a/login; 但实际应该为:carrots-admin-ajax/a/login 。

我的理解是因为配置nigix时代码为:

location /carrots-admin-ajax/{ 
     proxy_pass http://dev.admin.carrots.ptteng.com/
}

。这里 /carrots-admin-ajax/ 是有标签或者标识符的作用的,我只有在url输入 /carrots-admin-ajax/ ,才能打开它所定义或者说定位的地址。因为问题2 、3卡了差不都一下午,太坑了。

收获:

HTTP协议,AJAX,原生js的异步请求,nginx 反向代理 垮域的定义和作用有初步了解。

ajax的步骤包括:1、创建AJAX对象;2、发出HTTP请求;3、接收服务器传回的数据;4、更新网页数据;

将open第三个值设置为true时,定义为异步请求,反之则为同步请求。

open 最常用的方法是"GET"与“POST”。

get用于常规请求,它适用于当URL完全指定请求资源,当请求对服务器没有任何副作用以及当服务器的响应是可缓存的情况下。

post常用于HTML表单。它在请求主体中包含额外数据且这些数据常存储到服务器上的数据库中。相同URL的重复POST请求从服务器得到的响应可能不同,同时不应该缓存使用这个方法的请求。任务五目前我用的就是post。











返回列表 返回列表
评论

    分享到