我正在尝试查看 Grails 附带的内置 REST 功能是否允许相同的 Grails 应用程序访问另一台机器上的 RESTful API 端点(有效地使其成为 REST 客户端),以及提供相同的 API 端点,以便它可以被其他机器击中(有效地使其成为 REST 服务器)。
例如,假设我有 2 个 Grails 应用程序,即应用程序 A 和应用程序 B。两者都将公开一个/ping
REST 端点,当 HTTP GET 命中时,该端点可能会返回一个 JSON“pong”消息。我想知道应用程序 A 是否可以访问应用程序 B 的/ping
端点,同时还提供同名/签名的端点(以便应用程序 B 也可以访问应用程序 A /ping
)?
最重要的是,更进一步,我想将 RESTful 客户端/服务器功能(for /ping
)抽象为 Grails 插件,grails-pingrest.zip
然后让应用程序 A 和 B 都将此插件作为依赖项导入。这样,两者都为客户端和服务器实现共享相同的代码库。
这可能吗?如果是这样,如何以及是否有任何障碍/警告/gotchyas。如果不是,为什么?