查看: 61|回覆: 0

delphi restful-WiRL

[複製鏈接]

6

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2012-2-12
發表於 2022-6-7 10:16:00 | 顯示全部樓層 |閲讀模式

delphi restful-WiRL

源码获取:https://github.com/delphi-blocks/WiRL

创建WiRL是为了简化 Delphi 中的 RESTful 服务实现,但更重要的是,它可以实现与用其他语言和工具编写的 REST 客户端的最大互操作性。

WiRL 遵循 Java JAX-RS 规范并尝试符合 6 个 REST 约束。

WiRL 是一个高级 REST 框架,通过将属性应用于这些类,将普通 Delphi 对象 (PODO) 公开为 RESTful Web 资源。

[Path('customers')]
TCustomerResource = class
public
  [GET]
  [Produces('TMediaType.APPLICATION_JSON')]
  function SelectCustomers: TCustomerList;

  [POST]
  [Consumes('TMediaType.APPLICATION_JSON')]
  [Produces('TMediaType.APPLICATION_JSON')]
  function InsertCustomer(ACustomer: TCustomer): TCustomer;
end;

WiRL 具有强大的 HTTP 内容协商并定义属性以将特定的 URI 模式和 HTTP 操作绑定到 Delphi 类的各个方法。它具有参数注入属性,因此您可以轻松地从 HTTP 请求中提取信息。它具有消息正文阅读器和编写器,允许您将数据格式编组和解组与 Delphi 对象分离。它具有异常映射器,可以将异常映射到 HTTP 响应代码和消息。

WiRL 使用 3 个子模块:

  1. 用于 JSON Web 令牌创建和验证的Delphi JOSE 和 JWT 库
  2. Neon - Delphi 的序列化库,用于将 Delphi 简单类型、对象、记录、数组等转换为 JSON 格式
  3. OpenAPI 3 for Delphi用于生成 OpenAPI 文档
回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部