gpt4 book ai didi

rest - Golang 中的 RESTful 服务是否应该包含客户端接口(interface)?

转载 作者:IT王子 更新时间:2023-10-29 02:29:52 24 4
gpt4 key购买 nike

如果我在 Golang 中开发预订 REST 服务(即在包裹预订中)。创建允许业务操作的 BookingClient 接口(interface)(由结构支持)是否是一种“GO 方式”,以便我的 Restful 服务的客户将使用 BookingClient(从包裹预订中导入)而不是直接发送 http 请求?

最佳答案

一般来说,不会——如果您提供特定语言的客户端,那只是为了方便,让(某些)用户可以更轻松地使用您的 API。这当然假设您的客户设计良好。我不会仅仅在 Go 中提供一个接口(interface)来指示一组可能的 API 调用。这将有利于非常小范围的受众,可能是那些自己为你的 API 开发客户端的人,他们使用的编程语言恰好与你的服务器的实现相同。即便如此,他们也可能不太喜欢使用接口(interface)的想法(例如,他们可能只需要一组特定的方法)。

如果你想为你的 API 提供一个客户端,那就去做吧,但是将它与实际的服务器分开(不同的包,甚至可能是不同的 repo)。通常,人们会通过 HTTP 开发 API 以允许广泛的客户端访问它,这可以用任何语言编写。我不会提供一些接口(interface),而是会花时间编写好的文档。

在我看来,假设没有提供更多上下文,你的问题的答案应该与你问自己是否应该使用 Python 提供客户端没有什么不同。但是,如果您的 API 由您的公司内部使用并且您主要使用 Go 进行开发,那么整个情况可能会发生变化。

关于rest - Golang 中的 RESTful 服务是否应该包含客户端接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34853904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com