有关接口的问题:
learn
【连载】the first time项目日志(一)——做项目查资料
=>转载自博客http://blog.itpub.net/31562041/viewspace-2564416/
【连载】the first time项目日志(二)——做项目查资料
=>转载自博客https://blog.csdn.net/lambert310/article/details/51683775
【连载】the first time项目日志(三)——做项目查资料
=>转载自https://developer.mozilla.org/zh-CN/docs/Web/Security/Same-origin_policy
【连载】the first time项目日志(三)——做项目查资料
=>部分问题及答案转载自知乎,部分回答转载自博客,部分解析来自本人整理;所以没有链接(呜呜=_=)
下面是关于接口的一些些内容,初做项目完全不懂前后端是如何交互的~
Q代表问题,A代表回答;A后的数字代表答案序号~
Q:后端的API接口是怎么写的,用了什么技术,是怎么把数据库的数据转成JSON格式,然后弄成一个url给前端程序员的?
A1:后台API接口一般都是使用的“RESTFul”,搜一下这个关键字就能找到很多。
大概的流程如下:
1,通过URL定位接口函数。
2,在接口函数中操作数据库,增、删、查、改。
3,返回操作结果。
至于怎么将数据库中的数据转成JSON格式,不管是自己实现还是通过ORM实现,原理都是将获取到的数据拼接成JSON,这个拼接一般很少去手动拼接,而是先将数据绑定到实体类上,然后通过第三方库转成JSON,比如.Net上的NewtonSoft.JSON,可以一句话将实体类转成JSON(术语:序列化)。
同理,处理接收到的JSON数据时,一般也都是使用第三方库将JSON转成实体类(反序列化),然后再进行处理。
RESTFul,API设计规范
RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务接口的场景,实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。
REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。
Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。此外,无状态请求可以由任何可用服务器回答,这十分适合云计算之类的环境。客户端可以缓存数据以改进性能。
在服务器端,应用程序状态和功能可以分为各种资源。资源是一个有趣的概念实体,它向客户端公开。资源的例子有:应用程序对象、数据库记录、算法等等。每个资源都使用 URI (Universal Resource Identifier) 得到一个唯一的地址。所有资源都共享统一的接口,以便在客户端和服务器之间传输状态。使用的是标准的 HTTP 方法,比如 GET、PUT、POST 和 DELETE。Hypermedia 是应用程序状态的引擎,资源表示通过超链接互联。
<学习RESTful>
学习资料:RESTful 架构详解参考菜鸟教程:https://www.runoob.com/w3cnote/restful-architecture.html
A2:通过注释生成api文档
A3:一个设计思想,高内聚,低耦合
A4:可以通Java EE的一个框架Hibernate(我们的JDBC)连接到数据库,然后再通过写servelet,就可以实现一个简单的接口
<学习Servlet>
A5:奇怪的回答(好像明白了什么)
首先,要弄清楚前端提供一个接口或者调用后台接口,那么这个接口具体指什么?网上用户上传图片作为头像这个需求需要后台人员处理,当用户登录 修改自己个人信息的时候,上传了头像。此时,后台处理该用户update个人信息,将该图片存入数据库,一般存的都是图片地址,string形式的数据。然后,要返回到前台的时候,后台人员需要对这些用户的个人信息进行处理,不只是头像,还有一些别的信息。后台通过语言编译,生成json格式的键值对(一般是json 还有xml txt 等数据格式)。生成一个地址也就是url,前台人员利用ajax,将返回的data显示到页面就好了。大体上来讲,接口一般指的是HTTP接口,也可以说是HTTP API。接口由后端提供,前端调用后端接口以获取后端数据。而且接口由URL和HTTP方法构成,URL为接口的地址,HTTP方法指的是GET, PUT, DELETE等等。
前端调用后端接口无外乎六种方法(
不是我的工作啦),如下:1、打开vs,创建空的http://asp.net mvc演示项目【WebMVC】
(1)依次点击【文件】->【新建】->【项目】;
(2)在【新建项目】界面选择【Web】->【http://ASP.NET Web 应用程序(.NET Framework)】,输入名称,选择框架至少4.5版本,点击【确定】按钮;
(3)选择【空】->【MVC】->【确定】 ;
(4)创建好了项目。
2、在项目中
(1)在Controllers文件夹上点击鼠标右键,依次选择【添加】->【控制器】,即可完成HomeController的创建;
(2)在Controller的Index方法内,点击鼠标右键,选择【添加视图】;
(3)在项目中添加文件夹【Content】并添加jquery源文件;
(4)在Index页面添加jquery的引用。
3、在Index页面中添加一个输入文本框,一个按钮,以及显示结果的dom。
4、在HomeController中添加新的方法,用于接收前台传入的参数,组装后返回。
5、在Index页面,添加Jquery的ajax方式,调用后台接口,返回结果的处理代码。
6、在vs中,按F5调试运行结果,如下:
(1)在文本框中输入内容;
(2)点击按钮,调用接口,并将返回值显示在界面;
(3)如果要提交大量数据,或者敏感数据,请修改ajax的type方式,这样参数就不会在url地址栏中显示了。
A6:实际操作时的问题:https://zhuanlan.zhihu.com/p/68435690
转载于2021/2/2日。