请问 根据 REST api 生成 spring 客户端代码有什么办法?

2020-09-14 16:43:36 +08:00
 chenhui7373

输入:

https://{api-host}/v1/player/immediateControl/power

请求参数
 {
    "playerIds":[
        "4PBXun3mQoZGnKdLKoDtBA==",
        "4PBXun32QoZGnKdLKoDtBA=="
    ],
    "option":1
}

响应参数
 {
    "success":[
        "4PBXun3mQoZGnKdLKoDtBA==",
        "4PBXun32QoZGnKdLKoDtBA=="
    ],
    "fail":[
        "4PBXun3mQoZGnKdLKoDtBA==",
        "4PBXun32QoZGnKdLKoDtBA=="
    ]
}

输出:

	controller 请求参数 能按输入请求参数接收
	service    向该 url 请求,响应
	没有 repository 、mapper 持久层 	
 

需求概括,根据 url 请求、响应,包装成 spring 客户端代码 。 问题:有开源项目、或者工具吗

982 次点击
所在节点    问与答
12 条回复
pushback
2020-09-14 16:44:38 +08:00
自己手撸一个🐶
chenhui7373
2020-09-14 16:46:08 +08:00
lower
2020-09-14 16:46:48 +08:00
postman
chenhui7373
2020-09-14 16:49:56 +08:00
@lower 不错,入选,感谢!
chenhui7373
2020-09-14 16:53:04 +08:00
@lower 还想再懒一点 ,连 controller service 也分层好 ~~~///(^v^)\\\~~~
lower
2020-09-14 16:54:38 +08:00
jaylee4869
2020-09-14 17:00:34 +08:00
@chenhui7373 controller service ? 你说的是 spring 服务端代码吧? postman 只能生成客户端的调用代码( curl 这类)。
chenhui7373
2020-09-14 17:03:54 +08:00
@jaylee4869 postman 这种还要自己再分层一下,spring 作为客户端请求 别人的 http Api
napsterwu
2020-09-14 18:10:45 +08:00
Insomnia 可以生成各种语言的代码段
chenhui7373
2020-09-23 08:54:11 +08:00
@napsterwu 谢谢。这两天自己尝试写模板,用的 nodejs,然后发现自己不会 写 parser,遂弃。

目前我的看法
postman 是一种规范,如果大家都用 postman 测试自己的 restapi,只要导出来 json,或者直接生成 spring 规范的 controller service 岂不是美滋滋~
chenhui7373
2020-09-27 09:04:38 +08:00
@lower https://github.com/OpenAPITools/openapi-generator/tree/v4.3.1/modules/openapi-generator/src/main/resources/JavaSpring

原来还有这种规范

自己做也会走老路,postman 规范很好,

发现国产 apifox 不错,直接支持了这个设定
apifox
2020-12-07 11:38:48 +08:00
你试试 Apifox 。可以直接根据接口自动生成各种语言的代码,目前支持近 200 种语言和框架

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/706915

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX