宁静的原则

Igu*_*amu 2 rest

资源的真正含义是什么,为宁静的人提供多种表示形式?在阅读InfoQ的"REST简介"之后,我很困惑.什么是陈述?

Dan*_*ski 9

表示是显示和/或传输数据的特定方式.可以用不同的方式表示相同的资源:

  • 作为HTML页面
  • 作为XML文档
  • 作为JSON数据结构
  • 作为纯文本
  • 即使是PDF文件,如果需要的话
  • ...

您可以将"表示"与"数据格式"进行交换,以便更好地理解.

"客户"资源的示例:

HTML:

<h1>John Doe</h1>
Run Code Online (Sandbox Code Playgroud)

XML:

<customer-name>John Doe</customer-name>
Run Code Online (Sandbox Code Playgroud)

JSON:

{
  "UserName" : "John Doe",
}
Run Code Online (Sandbox Code Playgroud)

一个比喻:

想想一张照片.它可以表示为Bitmap,PNG,JPEG和许多其他格式和数据结构.所有这些都显示相同的图片,但它们的内部结构不同.(他们的"代表")

实际考虑:

在Web应用程序环境中,最常见的表示形式是(X)HTML作为发送到浏览器的标准输出.当涉及到Ajax和自动访问Web应用程序时,遵循XML和JSON.

  • 不,相反,添加表示层与缓存或任何其他速度优化无关.在大多数情况下,您不能只发送原始来源.当您的数据来自MySQL数据库时,您会发送什么?您只需*将您的数据转换为*某种*表示形式. (2认同)
  • 为了放大DR的观点,即使是"真正的来源"也只是另一种表现形式 - 它恰好是你在磁盘上的表现形式,但它仍然是一种表现形式.有关这个想法的更多信息,请参阅"共和国",柏拉图,第七卷514a-520a. (2认同)