您的位置:首页 > 理论基础 > 计算机网络

用HTTP进行数据交互的三个步骤

2019-03-25 11:16 197 查看

一,网络互通

比如两个系统都在同一个内网网段或者都在公网上。这个时候可以用一些简单的方法来测试,比如用ping命令,在浏览器里输入网址,或者调用一些简单的测试API,先保证网络是通的,再继续下一步。

二,身份验证

之后就是身份验证,就是确保请求者(客户端)的身份是可信任的,基于HTTP的身份验证有很多种,最简单的就是basic验证,也就是只有用户名和密码,这种验证方式虽然最弱,但是对客户端没有什么要求,所以对于用户主要是C用户(个人用户)的情况下一般是用这种方式,对于B用户(企业用户)来说,为了提高安全性,会使用证书验证等更加高级的验证方式。常见的SHA,X.509,SAML,OAuth等技术都是属于密钥验证,证书验证,这些技术深入了解的话可以有很多内容,不过这些技术都是为了身份验证这个目的。

HTTP客户端有很多工具,最基本的的就是浏览器(浏览器里输入网址其实就是调用HTTP的Get方法),其他常见的比如有SoapUI和Postman等,各种开发平台(比如ABAP,Java,C#)也会有自己的HTTP客户端类供开发者调用,他们的原理和实现方式是大同小异的,但是要注意的是,并不是所有的客户端工具都支持任意的验证方式的,这要看这个工具的开发者是否开发了相关的功能。一般来说basic验证是所有这类工具都支持的,其他的验证方式就要看具体客户端了。不过这些验证方式主要是为了浏览器访问服务器而设计的,所以浏览器基本都是支持的。

三,传递参数

这一步就是怎么通过HTTP方法传递并返回数据,HTTP方法能够传递数据的主要是三个地方,URL,Header和Body,理论上可以把想传递的数据放在这三个地方中任意一处,不过在实际开发里还是有一些规范的。在目前主流的RESTful调用方式里,URL一般只是用来存放查询,更新和删除的主键的;Header是用来放HTTP调用设置的,比如Content-Type等;而Body才是用来放实际的业务数据的。简单的调用,比如Body就是一个JSON文本;复杂的调用,比如batch处理或者上传文件,Body就会比较复杂,有一定的格式。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: