接口的盲目理解一些些内容

6 篇文章 0 订阅

有关接口的问题:

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、POSTDELETEHypermedia 是应用程序状态的引擎,资源表示通过超链接互联。

<学习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日。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值