Skip to content

tqma113/jsoncall

Repository files navigation

jsoncall

A schema for description of json call.

Express/Koa 等传统的 Web 框架 GraphQL Farrow gRpc JSONCall
类型安全
Validation
自定义类型
encode/decode
schema
跨语言/平台
  • 类型安全
  • Type + Validation + encoder/decoder 一体化
  • 代码生成:Schema <-> Server/Client Code,只需要定义一次,然后只需要关注/编写业务代码
  • GraphQL 的 Schema overload 太多,一份类型模型要写 4 遍
  • Farrow 只支持 TS 相关的内容,没有 encode/decode
  • JSONCall 是底层实现无关的,可以是基于 HTTP 请求,可以是基于其他的 RPC 方案,甚至可以本地的函数调用,比如 TS 中调用 Rust 的函数
  • TS 中调用 Rust 的函数,目前已有的方案非常麻烦,要自己做做很多的 validation、format、encode、decode,这个在 Native 和 webview 数据交互的 bridge 中有很大的应用空间
  • 在序列化和反序列化的部分,因为我们有数据的 schema 所以可以通过 fast-json-stringify 提升在序列化和反序列化的效率,也可以加入加密的部分

About

A schema for description of json call.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages