文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

数据传输,数据调用中的那些常用方式

2024-12-02 20:07

关注

[[427409]]

SOAP

它的全称叫做简单对象访问协议,它是最早人们用来进行数据传输的通讯协议,它通过xml定义了服务调用的参数和类型,定义了正文格式,定义了响应方式, 它可以通过http协议进行传输,也可以通过smtp协议或者tcp协议进行传输,因为xml的冗长,在消息过多的时候,它的传输数据会大大增加。

因此,soap这种数据传输方式已经逐渐被历史舞台所淘汰。

JSON

在xml格式冗余数据过多的时候,人们发现json数据格式可以传输更多的信息,并且json被很多编程语言所支持,因此,越来越多的api采用json数据格式来对外提供服务。

可以说现在开放的第三方api,一定会提供json的接口数据格式,当然,有些第三方也会在支付接口中返回xml的数据通讯格式。

REST

rest全称是资源表现形式的状态变化,它是一种架构风格,用来约束资源的查找和定位。

它不是数据的传输格式,它也不是单单约束数据的传输格式,它约束的是资源的状态改变方式,它把一切都看成资源。

这里的表现形式指的是json,xml或者html任何数据格式,包括图片格式。

状态变化指的是通过GET,POST,DELETE,PUT等动作来修改它的状态,使它的状态增加,减少,被删除等。

REST 提供的是一个无状态的服务,它不会记录访问者的上次访问状态。

虽然很多问题可以被rest来解决,比如交易映射,增删改查映射,文档映射,但是还是有很多情况下,rest无法使用所有的映射情况。

GRPC

gRPC 是来自 Google 的现代轻量级通信协议。它主要是用来解决远程过程调用的问题。

在分布式系统中,各个系统经常需要调用其它系统的服务,除了通过http接口方式进行调用之外,还有其它的调用方式,gRPC就是其中的一种。

它是非常有效的一种方法,它利用了 HTTP/2 的特性,解决了同步发送问题,它可以进行广播发送,也可以实现多路复用,通过一个连接,它可以传输更多的消息。

它采用的是二进制的数据格式,相比于json,xml等文本格式,它大大缩小了数据传输的体积,同样的带宽可以更快更多地传输消息。

GraphQL

GraphQL 是一种针对 Graph(图状数据)进行查询特别有优势的 Query Language(查询语言),所以叫做 GraphQL。

GraphQL 是 Facebook 发明的,它为查询api提供了另一种方式,可以通过一个接口,根据不同的查询条件,返回不同的数据。

GraphQL 允许您在单个查询中询问您想要的内容,从而节省带宽并减少瀑布式请求。它还使客户端能够请求他们自己独特的数据规范。

API 开发人员使用 GraphQL 创建一个模式来描述客户端可以通过该服务查询的所有可能的数据。GraphQL 模式由对象类型组成,这些类型定义了您可以请求哪种类型的对象以及它具有哪些字段。当查询进来时,GraphQL 会根据架构验证查询。

GraphQL 查询不仅能够获得资源的属性,还能沿着资源间引用进一步查询。典型的 REST API 请求多个资源时得载入多个 URL,而 GraphQL 可以通过一次请求就获取你应用所需的所有数据。这样一来,即使是比较慢的移动网络连接下,使用 GraphQL 的应用也能表现得足够迅速。

总结

在万物互联的时代,人们总是必不可少地需要跟第三方接口打交道,或者是向第三方提供接口服务,我们总是希望我们的程序可以更快,更高效,更便捷,因此开发人员不断研发和改进技术,未来的接口服务不是第三方提供什么服务来给用户使用,而是用户想要什么数据就可以从第三方调取。

 

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯