标准解读丨ASAM SOVD系列之三:基于HTTP REST的SOVD API

2024-08-07 08:38:42·  来源:CASAM标准组织  
 

01  HTTP REST概念介绍

SOVD API符合HTTP REST原则,这意味着会以资源形式提供诊断内容。关于HTTP REST的基本介绍内容如下:


01 HTTP REST概念解析


REST即表述性状态传递(英文全称:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。REST是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。


REST在Browser/Server的基础上添加了另外3个规范性的组成,第一个为统一接口,第二个为分层系统,第三个为按需代码。


02 REST特性分析


在三种主流的Web服务实现方案中,因为REST模式的Web服务与复杂的SOAP和XML-RPC对比来讲明显的更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。


REST(Representational State Transfer)方法主要包括GET、POST、PUT、DELETE四种HTTP方法。


  • GET方法:用于获取资源,可以类比于数据库操作中的SELECT操作,用于从服务器获取数据。例如,通过GET方法可以获取所有学员的信息或者特定ID的学员信息。
  • POST方法:用于新建资源,也可以用于更新资源,可以类比于数据库操作中的INSERT操作,用于向服务器提交新的数据。
  • PUT方法:用于更新资源,可以类比于数据库操作中的UPDATE操作,用于修改服务器上的数据。
  • DELETE方法:用于删除资源,可以类比于数据库操作中的DELETE操作,用于从服务器上删除数据。

  • 图片


    这些方法构成了RESTful API的基础,通过不同的HTTP方法,客户端可以对服务器上的资源进行创建、读取、更新和删除操作。RESTful API的设计风格强调资源导向、无状态性、统一接口、分层系统和可缓存性,这些特性使得RESTful API在构建可扩展、高性能的Web服务时非常有用。


    RESTful适用于许多不同的应用场景,包括:


    Web 应用程序

    RESTful可以用于构建Web应用程序,如社交媒体网站、博客、在线商店等。


    移动应用程序

    RESTful可以用于构建移动应用程序,如手机应用程序、平板电脑应用程序、车端应用程序等。


    后端应用程序

    RESTful可以用于构建后端应用程序,如数据库服务器、消息队列服务器等。


    物联网设备

    RESTful可以用于构建物联网设备,如智能家居设备、智能城市设备等。


    02 基于HTTP REST原则的SOVD API


    在SOVD中,资源路径由单个实体路径和为该实体提供的标准化资源和资源集合组成。


    采用HTTP方法表示单个诊断内容的可用操作。SOVD采用以下HTTP方法(即REST):


    HTTP方法

    目的

    GET

    从资源中读取内容

    PUT

    更新资源内容(如,通过写入新值)

    POST

    新建(临时)资源

    DELETE

    删除已创建的资源,内容重置为默认


    以下将通过具体案例简要说明SOVD基于REST的方法。以实现车窗控制功能的车载软件应用为例,可提供“RearWindows(后车窗)”位置等相关信息。


    图片


    就SOVD而言,通过提供包含“RearWindows(后车窗)”叶资源的“WindowControl(车窗控制)”SOVD实体予以实现,而该叶资源可以通过GET操作读取。


    以上案例的代码示例:


    Request:

    GET {base_uri}/apps/WindowControl/data/RearWindows HTTP/1.1

    分享到:
     
    反对 0 举报 0 收藏 0 评论 0
    沪ICP备11026917号-25