亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

OpenApi/Swagger - 客戶端和服務器有什么區別?

OpenApi/Swagger - 客戶端和服務器有什么區別?

SMILET 2024-01-25 10:44:39
我已經構建了一個 RESTful 服務,使用 OpenApi 3.0 公開端點yaml當我構建這個時,它會自動生成一個client目錄和一個server目錄。我成功地利用服務器 API 作為消耗請求的端點。然而,客戶端 API 是由完全相同的生成的yaml......接受相同的參數類型并返回與服務器相同的類型。我的理解是客戶端向外部服務發出請求,而服務器則消費來自外部服務的請求。如果這是正確的,為什么 OpenApi 相同地定義客戶端和服務器,并且不提供單獨配置它們的方法?
查看完整描述

1 回答

?
慕森王

TA貢獻1777條經驗 獲得超3個贊

你是對的:

我的理解是客戶端向外部服務發出請求,而服務器則消費來自外部服務的請求。

這些基本上是您規范的示例實現。

它們都是根據相同的 OpenAPI 合約構建的,客戶端可以調用服務器,服務器將按照規范中描述的各種 API 和數據模式達成一致。

client是一個可以在使用 API 的應用程序中使用的庫,因為您可以按原樣使用它,向 OpenAPI 定義描述的 API 發出請求。

server只是一個示例服務器應用程序,提供 OpenAPI 中描述的 HTTP 接口。

兩者本身都不是非常有用,因為客戶端只需以正確的方式調用 API,服務器將簡單地公開端點并執行諸如序列化/反序列化任何請求或響應數據之類的操作。API 的實現由您決定。

通常,我從生成的規范中使用的有用位是類model,因為這有助于確保我的應用程序代碼(無論是客戶端還是服務器)基于正確的架構。


查看完整回答
反對 回復 2024-01-25
  • 1 回答
  • 0 關注
  • 169 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號