前端常见面试问题及其解析--1.后台数据如何传送到前端

面试问题及其解析:

 

1.后台数据如何传送到前端

  两种方法:get/post(最常用的两种HTTP方法,其实还有head、put、delete、options)

                 HTTP:超文本传输协议,保证客户机与服务器之间的通信(三次握手)

                 GET-从指定的资源请求数据(如百度搜索)

                    请注意,查询字符串(名称/值对)是在 GET 请求的 URL 中发送的:

                       /test/demo_form.asp?name1=value1&name2=value2

                   特性:

      • GET 请求可被缓存
      • GET 请求保留在浏览器历史记录中
      • GET 请求可被收藏为书签
      • GET 请求不应在处理敏感数据时使用
      • GET 请求有长度限制
      • GET 请求只应当用于取回数据

                 POST-向指定的资源提交要被处理的数据(如提交表单)

                   请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发

                   送的:

                      

  POST /test/demo_form.asp HTTP/1.1
  Host: w3schools.com
  name1=value1&name2=value2

 

                    特性:

      • POST 请求不会被缓存
      • POST 请求不会保留在浏览器历史记录中
      • POST 不能被收藏为书签
      • POST 请求对数据长度没有要求

 

具体请看下表:

 

 

其他方法:

 

 

 

 

在angularjs中的实战应用:

首先,你的后台要有相应的支持接口api,其中定义了接口类型(get/post)及其使用方法

 

 

 

一般我们会用到接口测试工具Postman

 

 

 

然后在angular的src/app/index.api.js文件中,定义前端与后台接口的对接方式

首先定义一个factory,其中提供了前端与后台对接的一些方法

(factory方式创建的服务,作用就是返回一个有属性有方法的对象。相当于:var f = myFactory();)

 

 

 

 

api定义:

 

 

 

实际项目中调用:

 

 

(中间的function即为fb)

注意一开始要在开头注入(dataService依赖

 

 

 

过程总结:后台(服务器)定义Http请求方法[定义http请求]

 —>前端api.js文件中定义api service方法并注入$http依赖[定义api服务]

 —>在方法中创建api service返回对象,以及定义基地址[定义端口和返回值]

 —>为其返回对象绑定一个又一个http方法(get/post),其中定义它的url、请求头、回调函数、异常处理等等[定义请求函数]

 —>在项目中通过注入api service方法依赖调用api,从而成功与后台对接[调用函数]

 

 

(回调函数解释:你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货。在这个例子里,你的电话号码就叫回调函数,你把电话留给店员就叫登记回调函数,店里后来有货了叫做触发了回调关联的事件,店员给你打电话叫做调用回调函数,你到店里去取货叫做响应回调事件。回答完毕。

作者:常溪玲

链接:https://www.zhihu.com/question/19801131/answer/13005983

来源:知乎

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。)

            

posted @ 2017-05-03 21:04  丝瓜儿  阅读(8010)  评论(0编辑  收藏  举报