js与后台交互详述(⼊门篇)
很多新⼿前端在初期学习的时候往往把注意⼒放在如何编写页⾯,如何编写效果上,⾥有个朋友问我js是如何与后台交互的,我简单的说⼀下。
⾸先需要知道两个东西,⼀个是客户端,⼀个是服务器,客户端其实就是我们在上⽹时候使⽤的机器,⼤部分情况下这个客户端就是我们的电脑,包括台式电脑,笔记本电脑,⼿机,平板之类的。那么服务器是什么?服务器其实也是电脑,准确的说服务器是性能⽐较强⼤的电脑,正常情况下⼀台服务器可以连续半年甚⾄⼀年不关机,连续运⾏,这个技能我们家⽤电脑⼤多做不到。正是因为服务器可以保持长时间的运⾏,从⽽保证我们放在服务器上⽂件可以随时都被访问到.
现在来看⼀下服务器和客户端之间的联系,这⾥就以⽹站为基础,通俗的解释⼀下。我们访问⽹站⼤多数使⽤的都是浏览器,通过在地址栏⾥⾯写下域名,按下回车就可以访问到我们想要访问的⽹站,那么这个具体的过程肯定不是那么简单,我们在地址栏中写下⽹址以后,按下回车,这个时候浏览器⾸先会访问⾃⼰所在的电脑上的host⽂件,查看host⽂件中是否记录有我们在地址栏中输⼊的域名,如果有,则到与之对应的ip,访问去了。如果没有,它就要去到⼀个叫做dns的系统中,这个dns是存在于公⽹中的,他的作⽤就是保存许多域名和ip(真实的dns系统⽐这个复杂的多,这⾥只是⽅便理解简述⼀下),他到dns以后,把域名告诉dns,让dns去查⼀下,看看有没有与之对应的ip,如果查到了,就会拿着ip去那个⽹
站去了!!这⾥说⼀下,ip实际上可以理解为地址,是我们存放程序时候标记的地址。域名只是为了帮助我们更好的记住,实际上真正要到⽹站还是要靠ip。
到此为⽌,我们已经到了与这个ip对应的服务器,那么接下来解释两者互相对话啦,浏览器告诉服务器我要看⾸页,服务器回答好,然后把⾸页交给浏览器,去看吧!!这⾥我打了⼀个⽐⽅,事实上这个过程都是建⽴在⽹络通讯协议上的,其中有⼀个最常⽤的就是http协议,浏览器与服务器之间⼀切交流都是建⽴在这个协议之上的,这⾥我简单的讲⼀下这个协议吧,http协议分为两部分,分别是请求部分和响应部分,请求部分是⼜浏览器发出的,服务器接受到以后读取协议内容,然后发出响应,浏览器接受到响应的内容,并把它展⽰到电脑上。http协议中的请求部分分为请求⾏,请求头信息,请求消息体三部分,请求⾏包括我们想要访问的域名,协议等级,请求消息头包括具体访问的⽂件,连接长度,浏览器内核信息等,消息体则是浏览器发送给服务器上的具体数据,这个数据只有在发送⽅式为post的情况才会出现在消息体上,如果是get⽅式,则出现在地址栏中。服务器收到相关请求以后,开始分析具体要⼲什么,然后去执⾏,执⾏完成以后吧数据全部返回,相应部分就不详细说明了。
还要注意⼀件事情,那就是服务器收到请求以后做的事情是如何完成的,我以PHP程序为例。假如服务器收到请求需要访问⽹站⾸页,那么⾸先就会去调取后台对应的⾸页⽂件,然后开始解析这个⽂件,解析的过程中,PHP就发挥作⽤了,⽐如说,页⾯中的数据都是依靠它来进去读取的,假如⾸页中有⼀块地⽅需要展⽰出今天的最新新闻,那么PHP就会调⽤相关程序,然后去访问数据库,把对应的数据从
数据库中取出来,然后展⽰到页⾯中,以此类推,其他的的数据都是这样搞出来的。当然了,PHP还会做很多其他事情啊,⽐如判断登录状态,检测ip之类的,最后当PHP把所有要做的事情都做完以后,最后就是把处理好的⽂件返回给浏览器了,这⾥注意⼀下,服务返回给浏览器的其实就是已经⽣成好的静态页⾯了,⾥⾯没有⼀⾏后台代码,浏览器接收到这个返回到数据,然后开始逐⾏解析,最后展⽰给我们看。
以上就是前后台交互流程。⾄于Js与后台交互,说⽩了,就是依靠js像后台发送数据,然后接受服务器返回的数据就是了。这⾥要说到⼀个技术就是ajax,其实整体的流程都是⼀样的,我们通过js的事件触发ajax,像服务器发送相关数据,服务器得到数据,处理完成以后返回给我们对应的数据,js可以获取到这个数据,然后该怎么处理就怎么处理,这个和我们上⾯说的流程基本⼀样,区别就是通过 js发送请求可以达到⽆刷新的效果,正常我们访问⼀个页⾯,服务器都是整个页⾯的返回给我们,如果是通过ajax的话,只会返回我们想要的数据,这样,是不会刷新页⾯的,加快了速度,减少流量的浪费,还有很多好处的,不多说了。(如果不了解ajax,那么可能需要⾸先学习下ajax哦!!)编程入门先学js
这篇⽂章没有⼀句代码,说的也不是很专业,只能作为⼊门来了解,有问题的地⽅,请⼤家多多指教!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论