zoukankan      html  css  js  c++  java
  • Rest之路

    资源

    在Rest的架构之内,讲一切内容都是为资源。每一个资源都被定义为一个URI。

    格式: <protocol>://<service-name>/<ResourceType>/<ResourceID>

    除此之外,URI的另一个关键部分为“VERB“, 相应的我们也称他们为“方法”。他们通常有四种形式 -- GET/POST/PUT/UPDATE

    关于资源的表述,Rest有多种形式的表述方式,其中以XML和JSON最为常用。

    消息

    Rest 采用HTTP协议作为client和server之间的传输媒介。 client 通过发送 HTTP Request 到 Server;Server 发送 HTTP Response 到 client。

    为了方便理解,通过图文并茂的方式来解释一下 HTTP Request/Response.

    以下部分摘自: https://www.tutorialspoint.com/restful/restful_messages.htm

    HTTP Request

    HTTP Request

    A HTTP Request has five major parts:

    • Verb- Indicate HTTP methods such as GET, POST, DELETE, PUT etc.

    • URI- Uniform Resource Identifier (URI) to identify the resource on server

    • HTTP Version- Indicate HTTP version, for example HTTP v1.1 .

    • Request Header- Contains metadata for the HTTP Request message as key-value pairs. For example, client ( or browser) type, format supported by client, format of message body, cache settings etc.

    • Request Body- Message content or Resource representation.

    HTTP Response

    HTTP Response

    A HTTP Response has four major parts:

    • Status/Response Code- Indicate Server status for the requested resource. For example 404 means resource not found and 200 means response is ok.

    • HTTP Version- Indicate HTTP version, for example HTTP v1.1 .

    • Response Header- Contains metadata for the HTTP Response message as key-value pairs. For example, content length, content type, response date, server type etc.

    • Response Body- Response message content or Resource representation.

    Example

    As we have explained in RESTful Web Services - First Application tutorial, Let's put http://localhost:8080/UserManagement/rest/UserService/users in POSTMAN with GET request. If you click on Preview button residing near send button of Postman and then click on Send button, you may see the following output.

    HTTP Request/Response

    Here you can see, the browser sent a GET request and received a response body as XML.

  • 相关阅读:
    Flutter 步骤进度组件
    程序员到底要不要学习框架、库和工具
    Flutter 吐血整理组件继承关系图
    超过百万的StackOverflow Flutter 问题
    Flutter 实现网易云音乐字幕
    Flutter 实现虎牙/斗鱼 弹幕效果
    Flutter AbsorbPointer 与 IgnorePointer的区别
    《Flutter 小技巧》一行禁用App,一行置灰App,致敬
    Python 任务自动化工具:nox 的配置与 API
    Flask 作者 Armin Ronacher:我不觉得有异步压力
  • 原文地址:https://www.cnblogs.com/atuotuo/p/6286267.html
Copyright © 2011-2022 走看看