Skip to content
📖0 阅读·🤍0 点赞

一句话总结

HTTP 是“快递车”JSON-RPC 是“包裹格式 + 约定好的指令”RESTful 是“快递行业的一种规范路线”

它们不是一个层级的东西,所以经常会混在一起让人迷糊。


1. HTTP 协议是什么?

小白理解:

HTTP 就是互联网传输数据的“运输协议”。

就像你网购:

  • 你下单(请求 request)
  • 商家发货(响应 response)

HTTP 就负责:

  • 请求怎么发出去?
  • 响应怎么回来?
  • 用 GET 还是 POST?
  • 状态码 200、404 是什么意思?

📌 HTTP 只管传输,不管你传的是什么内容。


2. JSON-RPC 2.0 是什么?

JSON-RPC 是一种“远程调用协议”。

小白理解:

它不是快递车,而是包裹里面的“说明书”。

你发给服务器的内容长这样:

json
{
  "jsonrpc": "2.0",
  "method": "addUser",
  "params": {
    "name": "Tom"
  },
  "id": 1
}

它规定:

  • 你要调用哪个方法(method)
  • 参数是什么(params)
  • 返回结果对应哪个请求(id)

📌 JSON-RPC 的核心是:

✅ “我不是访问资源,我是在调用函数!”


3. HTTP 和 JSON-RPC 有什么区别?

对比点HTTPJSON-RPC
是什么层级传输协议调用协议(应用层格式)
作用负责传输请求响应规定调用方法和参数格式
类比快递车包裹里的说明书
是否必须一起用可以单独用通常跑在 HTTP 上

📌 JSON-RPC 经常是:

JSON-RPC + HTTP POST


4. RESTful 接口又是什么?

RESTful 是一种 Web API 的设计风格。

小白理解:

RESTful 就像“快递行业标准路线”:

  • 你要查用户 → GET /users/1
  • 你要新增用户 → POST /users
  • 你要删除用户 → DELETE /users/1

REST 的核心是:

✅ “我操作的是资源(Resource)”

而不是函数调用。


5. RESTful 和 JSON-RPC 的关系?

它们是两种不同风格:


JSON-RPC 风格(调用函数)

http
POST /rpc
{
  "method": "getUser",
  "params": { "id": 1 }
}

特点:

  • 所有请求都走一个入口
  • 重点是 method(方法名)

RESTful 风格(操作资源)

http
GET /users/1

特点:

  • URL 就是资源
  • 用 HTTP 动词表达操作

6. 最简单的类比总结

概念类比
HTTP快递运输系统(车+路)
RESTful快递行业规范(路线+规则)
JSON-RPC包裹内容格式(说明书:调用哪个函数)

7. 什么时候用 REST,什么时候用 JSON-RPC?

用 RESTful 更适合:

✅ 对外开放 API ✅ Web 系统标准接口 ✅ 资源清晰(用户、订单、商品)


用 JSON-RPC 更适合:

✅ 内部系统调用 ✅ 方法很多但资源不清晰 ✅ 类似函数调用(如区块链、微服务)


最后一句话帮你记住

RESTful:“我要访问资源” JSON-RPC:“我要调用方法” HTTP:“我负责把消息送过去”

💬

评论功能

当前站点为 GitHub Pages 镜像版本,不支持评论功能。

如需发表评论,请访问主域名版本:

🚀 前往 主域名 版本评论
✅ 支持文字评论
✅ 支持图片上传

用代码书写人生 | This site is powered by Netlify

🌙