您何时说Web服务是完整的RestFul Web服务?

时间:2018-05-02 15:00:32

标签: rest web-services

这是最近提出的面试问题之一。我的回答是:

  • 如果它使用任何HTTP方法,如GET,POST,PUT,DELETE。
  • 以JSON,XML等任何格式返回数据。

但他对我给出的答案并不满意。您能否请我告诉我,Web服务将其称为Restful Web服务需要满足的条件是什么。

2 个答案:

答案 0 :(得分:1)

最有可能的是,面试官希望你进入Richardson Maturity Model,其中最后一级RESTfulness正在添加超媒体。

model

等级0

在级别0,您有一个使用HTTP进行远程交互的系统

1级

在级别1,引入了资源,我们与资源进行交互,而不是类似RPC的交互

等级2

在级别2,引入了HTTP谓词,我们使用GET,POST等请求的语义。例如,GET是幂等的。

等级3

在级别3,服务为RESTful的最终级别,引入了超媒体控件。如果您曾听过HATEOAS(超媒体作为应用程序状态引擎)的首字母缩略词,这基本上就是我们在这里讨论的内容,添加超媒体链接以向客户提供有关可访问资源的信息。这一点是可发现性

这是对不同级别的简要概述。阅读论文以了解详细信息(必须阅读任何“REST”开发人员)。

READ ME: Richardson Maturity Model

答案 1 :(得分:0)

基本上,RestFul网络服务将遵循以下原则,提及以下所有要点应满足面试官。

  • 通过URI进行资源识别
  • 统一界面
  • 自我描述性消息
  • 通过超链接进行有状态的互动

另请参阅此link