返回

与人一样的交互——B端和S端的交互模式

前端

人机交互的根本模式是B端发送请求,S端处理请求并返回响应。

程序来自于生活,web应用中的B端和S端的交互与人的交互是一模一样的。 只是,比生活中的稍微多了一丢丢(因为,计算机没有眼睛,没法看到。所以,把人能够看到的东西也得说清楚)。

举个例子,在生活中的交互,基本模式是什么?

  • 当B想向S请求资源时 ,B需要告诉S:我需要什么资源,我想做什么操作,我愿意付出什么代价,我的身份是什么。
  • 当S收到B的请求时 ,S需要校验B的请求是否合法,B的付出是否合理,B的身份是否合格,如果满足这些,S会把对应的资源返回给B。

在web应用中的B端和S端的交互中,也是同样的模式。

  • 当B端想向S端发送请求时 ,B端需要在请求中告诉S端:

    • 我需要什么资源(URL)
    • 我用什么方法请求资源(GET/POST)
    • 我发送的数据是什么(请求体)
    • 我愿意付出什么代价(请求头)
    • 我的身份是什么(身份验证信息)
  • 当S端收到B端的请求时 ,S端需要:

    • 校验B端的请求是否合法(HTTP状态码)
    • B端的付出是否合理(价格、权限等)
    • B端的身份是否合格(身份验证)
    • 如果满足这些,S端会把对应的资源返回给B端。

例如,我们熟悉的HTTP协议,就是一种B端和S端交互的协议。在HTTP协议中,B端是客户端,S端是服务器。

  • 当客户端想向服务器请求资源时 ,客户端需要在HTTP请求中告诉服务器:

    • 我需要什么资源(URL)
    • 我用什么方法请求资源(GET/POST)
    • 我发送的数据是什么(请求体)
    • 我愿意付出什么代价(请求头)
    • 我的身份是什么(身份验证信息)
  • 当服务器收到客户端的请求时 ,服务器需要:

    • 校验客户端的请求是否合法(HTTP状态码)
    • 客户端的付出是否合理(价格、权限等)
    • 客户端的身份是否合格(身份验证)
    • 如果满足这些,服务器会把对应的资源返回给客户端。

REST(REpresentational State Transfer)是一种B端和S端交互的架构风格。在REST架构中,B端和S端通过HTTP协议进行交互。

  • 当B端想向S端发送请求时 ,B端需要在HTTP请求中告诉S端:

    • 我需要什么资源(URL)
    • 我用什么方法请求资源(GET/POST)
    • 我发送的数据是什么(请求体)
    • 我愿意付出什么代价(请求头)
    • 我的身份是什么(身份验证信息)
  • 当S端收到B端的请求时 ,S端需要:

    • 校验B端的请求是否合法(HTTP状态码)
    • B端的付出是否合理(价格、权限等)
    • B端的身份是否合格(身份验证)
    • 如果满足这些,S端会把对应的资源返回给B端。

REST架构是一种非常灵活的架构风格,它可以被用于各种不同的应用场景。在现代web应用开发中,REST架构是非常流行的。