热门搜索词

RESTfulAPI初学者指南-学习网-初学者-指南-API-RESTful

2025-09-05

如果您不熟悉API(应用程序编程接口),那么在您遇到REST之前不久就会如此,REST是一种便于跨网络的运算机系统之间通信的架构风格。那么REST最重要的是什么?在本指南中,当我们深入研究万维网背后的基础技术时,我们将回答这些问题和其他问题。HTTP和万维网REST是一种体系结构样式,描述了分布式应用程序应如何相互交互。但要真正了解REST是什么,第一需要了解两个概念:资源,类似于Web的名词–它们描述了客户端可能想要从服务器中提取的“事物”(例如,组成网页的文档和文件)。HTTP谓词,它是Web的动词–它们描述了您可以对资源执行的“操作”,例如GET,POST,PUT和DELETE。在现实世界中,将动词应用于名词是我们人类每天都在做的事情,没有什么麻烦。你可以从咖啡桌上“取出”遥控器,“喝”咖啡,然后“松开”松饼,没有任何混淆。人机界面能够区分在时空约束下我们能做什么和不能做什么。在万维网上,您需要更具体。需要统一资源标识符(URI)来标识应用程序要访问的资源。需要HTTP(超文本传输​​协议),以便客户端知道可以将哪些“动词”应用于该资源。在浏览器中键入一种称为URL(统一资源定位符)的特别类型的URI并按Enter键,它会启动一系列事件,这些事件会导致向服务器发送GET请求,该服务器会响应您想要的网页访问,您现在拥有HTTP和万维网规范的标准实现。这一切都很好,但REST在哪里?要回答这个问题,请在世纪之交(1999年至2000年)将自己置于普通网络开发人员的角度。您知道如何使用HTTP和WWW规范设计Web应用程序。您的下一个逻辑问题是:设计良好的Web应用程序是什么样的?环绕这些规范设计软件的最佳实践是什么?REST是什么?因此,在2000年,HTTP规范的主要作者之一RoyT.Fielding发表了他着名的博士论文。它引入了REST的概念,并作为设计良好的Web应用程序应该是什么样子的首先个正式描述之一:REST提供了一组体系结构约束,当作为一个整体应用时,强调组件交互的可伸缩性,接口的通用性,组件的独立部署以及中间组件,以减少交互延迟,实施安全性并封装遗留系统。在下来的部分中,我们将详细介绍RESTAPI的概念和约束。关注点分离:客户端和服务器所有RESTful应用程序必须尊重客户端和服务器之间的关注点分离。这意味着客户端和服务器可以完全互操作。只要客户端和服务器都同意数据格式(通常是JSON)和消息传递协议(HTTP),就可以在不影响服务器操作的情况下更改客户端的代码,并且可以在不影响服务器端的代码的情况下更改代码客户端。这种模块化使RESTful应用程序更灵活,更易于扩展。可以采用面向组件的开发方法,只要它们访问正确的REST端点,不同的客户端和服务器就可以相互交互。无国籍RESTful应用程序是无状态的。客户端不需要知道服务器处于什么状态,反之亦然。这意味着服务器和客户端可以相互理解而无需查看以前的消息。这种约束背后的想法是,从客户端到服务器的每个请求都应该包含服务器理解请求所需的所有上下文,而不依赖于存储在服务器上的任何上下文。换句话说,会话状态完全保留在客户端上。无国籍约束有明确的权衡。您可以通过重复数据传输的形式增添每次交互的网络开销,从而获得可见性,可靠性和可扩展性。幸运的是,有一个解决方案:缓存。可缓存为了弥补无状态约束对客户端–服务器交互所带来的网络效率,RESTful服务必须支持缓存,即能够沿请求路径存储频繁访问的数据的副本。高速缓存约束要求将对请求的响应中的数据标记为可高速缓存或不可高速缓存。可缓存的响应打开了排除整个响应树的可能性。当发出请求时,第一检查高速缓存或一系列高速缓存以查找频繁访问的数据。仅当网络请求无法在任何缓存中找到它正在查找的数据时,网络请求才会传送到服务器。缓存可减少服务器上的带宽,延迟和总体负载。它还可以屏蔽用户的网络故障,因为他们仍旧可以查看存储在缓存中的网页。这就是您的ISP将缓存数据存储在其服务器上的浏览习惯上的原因。分层系统REST通过支持分层系统进一步分离了关注点。这是一种体系结构样式,涉及将行为封装到遵循系统层次结构的组件层中。例如,您可能有三个服务器,X,Y和Z.API部署在服务器X上,数据存储在服务器Y上,身份验证在服务器Z上处理。但是,就最终用户而言,他或她只是发送请求(例如,点击链)并收响应(指向新网页)。分层系统可以与请求路径上的共享中介处的高速缓存配对,通过跨多个网络和处理器的服务负载平稳来提高网络性能。统一界面RESTful应用程序的核心和灵魂是组件之间统一接口的想法。REST由四个接口约束定义:请求中的资源标识,可以命名的任何信息都是资源,可以通过URI识别资源,这与资源类型无关。通过表示来处理资源。这些资源的表示不是直操纵资源,而是在整个系统中传递。HTML,XML,SVG,JSON和PNG是资源表示格式的示例。自我描述性的信息,每个客户端请求和服务器响应都包含作用于资源所需的所有上下文。基本上,每个响应都通过为每个响应中的答应操作提供URI来描述API的使用方式。有点争议的是,许多自称为RESTful的API都跳过了这个要求。但要真正的RESTful原始论文,HATEOAS是一个艰巨的要求。总而言之,组件之间有一个统一的接口,可以将实现与它们提供的服务分离,并激励独立的发展。换句话说,您实现了分布式网络中的应用程序之间的互操作性–RESTfulAPI。相关文章推举APPIUM–用于测试的自动化工具  Appium最初由DanCueller开发,用于利用AppleiOS的UI自动化框架对本机挪动应用程序运行[…]...谈天机器人开发框架  Chatbot也被称为IMBot,人工会话实体,谈话机器人和谈天机器人。它是一个自动化软件程序,通过音频谈天[…]...OAuth2.0:掩护客户端凭据的节点API  掩护服务器客户凭据可能很棘手,OAuth2.0是将用户身份验证卸载到其他服务的绝佳方法,但如果没有用户进行身[…]...php是什么?为什么要使用php?  PHP(PHP的递归首字母缩写:HypertextPreprocessor)是JavaScript和Pyth[…]...Kubernetes教程–基础见识入门  Google创建了Kubernetes,以帮助开发人员更好地跨集群治理其容器化应用程序。尽管测试版于2014年[…]...RESTful,API初学者指南

对称加密与非对称加密-又名石首站长网-石首-对称-又名-学习网-与非

2025-09-05

加密算法分为对称加密和非对称加密,现在被百度全面支持的HTTPS,使用的是非对称加密。虽然网站HTTPS化是被公认的防止被劫持的有利手段,而且百度站长平台已经全面支持HTTPS站点,且提出HTTPS的网页具有排名优待,但是还是有很多小伙伴连对称加密与非对称加密都没搞明白。为了帮助大家尽快理解并记住,我们来用通俗易懂的语言诠释一下这两个小概念。在解释什么是对称加密和非对称加密之前,我们先来看个小故事。《火烧圆明园》有个桥段:八国联军挺起刺刀戳进了北京城时,慈禧带着儿子坐轿子要跑路,有大臣谋要对这位还在实习期的太后下手,意图颠覆政权。小皇帝的亲叔叔奕訢把这一切看在眼里,但是却不能跟太后明讲。于是有了正面这封奏折:在大清,这是再普通不过的奏折了,当太后拿着上图左边那张挖了不少洞洞的纸,再来看这封奏折时:“当心肃顺、端华、戴桓“,这才是奕訢想跟太后讲的话。上述故事中,洞洞纸就像一把钥匙,加密就是取下洞洞纸,解就是盖上洞洞纸。所以,我们现在来了解这个最重要的概念:互为逆操作的加密方式,就是对称加密,这种加密方式的加密和解都使用的是同一个钥:比如银行支票上的大写金额(壹贰叁肆……)也是一种对称加密方式,因为存在与阿拉伯数字(1234……)的对应关系。解对汉语使用者毫无难度,但外国人还是一眼难以识别。可如果老外去查查字典,还是比较容易弄明白的支票大写金额含义的,所以对称加密是一种相对容易被破解的加密方式。这就是为什么HTTP容易被劫持的原因。相反的,非对称加密则是使用不同的钥匙加密或解。私钥只能用公钥解;公钥只能用私钥解,公钥和私钥互为工具,私钥是一串和公钥完全不同的字符串:最后,再来简陋做个类比,对称加密就是用同一把钥匙开锁和上锁;非对称加密就是用一把钥匙锁门,但你却要用另一把钥匙来开锁。

加密狗是什么?-学习网-加密狗-SEO

2025-09-05

加密狗是一种小型设备,通常有闪存驱动器大小,可以插入运算机。一些加密狗充当安全钥,而另一些充当适配器。早期的硬件狗连到PC上的并行端和MAC上的ADB端,而现代版本通常连到USB端。安全钥安全锁用于拷贝掩护,旨在防止软件盗版。例如,一些高端的软件应用程序,如专业的音频和视频制作程序,需要一个加密狗才干运行。当您打开软件程序时,软件附带的加密狗必须插电。如果没有检测到正确的加密狗,应用程序将诞生一个错误消息,说明使用软件需要加密狗。适配器某些类型的适配器也称为加密狗,例如,加密狗可以为笔记本电脑提供不同类型的有线连。前几代笔记本电脑的扩展插槽被称为PCMCIA端,它们太窄了,无法容纳以太网插。因此,需要一个加密狗。这些类型的适配器通常是一到三英寸的线缆,一端连到网卡,另一端有一个以太网接口。现代的以太网适配器也有类似的外观,但它们通常连USB或Thunderbolt端。今天,许多加密狗提供无线功能。例如,USBWi-Fi适配器通常被称为硬件狗。由于大多数电脑现在都有内置的Wi-Fi芯片,所以3G和4G网络适配器等蜂窝数据适配器就更普遍。这些类型的适配器答应您通过电信或联通等挪动运营商连到互联网,即使没有Wi-Fi。相关文章推举PEST分析是什么意思?  PEST分析是对企业潜在问题的回忆,涵盖政治,经济,社会和技术领域。了解现在或将来可能呈现的问题可以帮助公司绕[…]...微信小程序是什么?  2017 年1月9日腾讯正式推出微信小程序,微信小程序是微信中基于云的嵌入式应用程序(应用程序中的应用程序)。[…]...CPP每次电话费用是什么意思?  CPP每次电话费用或“按次付费”是一种类似于PPC 的数字每次线索成本广告模式。通过引入谷歌的AdWords,[…]...什么是二级域名?  简陋来说,二级域名是域名扩展名左侧的名称,.com或.net。example.com网站仅用于解释顶级域名(T[…]...前端和后端的区别  如果您刚刚开始学习Web开发,您可能已经听过很多关于前端和后端的讨论。但到底是什么意思呢?如果你是该领域的初学[…]...加密狗是什么?

以太网接口是什么?-以太网-学习网-接口-SEO

2025-09-05

以太网接口是运算机上答应使用以太网连器的插或插座,这些端对于答应创建局域网(LANs)是必不可少的。以太网端通常可以在网络设备上找到,包括运算机、路由器、视频游戏机、调制解调器和电视。以太网是一个通信系统,它答应多个本地设备共享信息并协同工作。例如,在一个办公室里,可能有6个工作人员,每个人都有自己的运算机,他们都需要访问相同的数据库、程序和外部设备,如打印机和扫描仪。通过使用以太网技术将每个设备连到一个中央服务器或集线器,所有设备将能够访问相同的信息,并有效地与网络上的所有其他设备“交谈”。以太网接口答应使用有线连创建网络,这个插座看起来很像一个大的电话插孔,可以插入以太网电缆。插和电缆通常只用于近距离连设备,比如在同一栋建筑中,因为跨城市铺设数百公里的电缆或跨大陆铺设数百或数千公里的电缆是不切实际的。运算机和打印机等设备通常有一个端,答应它们入网络,而调制解调器等网络设备可能有多个端,答应连多个组件。没有物理端的设备仍旧可以通过以下两种方式之一连到以太网,第一,许多较新的计算机都有一个内置的以太网卡,它答应创建不需要布线的无线以太网,从而取代了无线技术。第二,对于没有以太网卡或专用端的设备,有时可以通过将无限网卡附到USB端来创建端。物理以太网端的一个缺点是容易损坏和难以修复,从端插入或移除电缆时一定要非常小心,因为端的物理元件可能会被损坏。修复以太网端通常需要将设备发送回制造商或电子修理服务,这可能会非常昂贵。大多数人抉择购买一个新的以太网适配器,或者用一个USB端到网络。相关文章推举SOAP是什么意思?  SOAP全称“SimpleObjectAccessProtocol”,代表“简陋对象访问协议”,SOA[…]...营销是什么意思?  营销是教导消费者为什么抉择你的产品或服务而不是竞争对手的过程,如果你不这样做,那就不是营销。关键是找到正确的营[…]...NGINX是什么,以及它是如何工作的  NGINX,发音类似于“engine-ex”,是一个开源Web服务器,自从它最初作为Web服务器成功以来,现在[…]...HTTP是什么意思?  HTTP代表“超文本传输协议”,HTTP是用于在web上传输数据的协议。它是Internet协议套件的一部分,[…]...SRAM是什么?  SRAM表示“静态随机存取存储器”,SRAM是一种使用静态方法存储数据的RAM,在这种方法中,只要向内存芯片供[…]...以太网接口是什么?