我有一个很简单的问题:)如何使用swagger codegen为动态feign basePath生成URI参数?
根据假装文件,它们在改变佯客户对象的基本路径动态地通过传递URI参数支撑槽API函数like so:
很好的例子:
interface MyClient {
@RequestLine("GET /internal-service")
String internalService(URI baseUrl);
}
事情是我使用的招摇,谁从YAML文件并添加注释@Param所有函数的参数,这是不好的,我产生我的API。
糟糕的例子:
interface MyClient {
@RequestLine("GET {baseUrl}/internal-service")
String internalService(@Param("baseUrl") String host);
}
有没有一种方法,使招摇发生器产生一个URI PARAM的API,而@Param注释?
期望的结果实施例:
interface MyClient {
@RequestLine("POST /internal-service")
String internalService(URI baseUrl, @Param("someParam") String someParam);
}
为了得到这个,你将不得不修改模板和生成器,你可以在github上打开一个问题作为feign生成器的增强或者建议,因为这是该语言的一部分。首先,您必须能够区分yaml中的URI参数,然后才能在生成器中对其进行解析,并在模板中正确显示并为此生成代码。 – moondaisy
非常感谢@moondaisy!对,我需要更改模板,但不一定是生成器。我可以使用配置让swagger使用我的新模板。无论我会建议这个增强,如你所建议的那样鼓吹:) – dorony
虽然有效,但它会在所有接口的所有方法中放入URI参数,尽管你可能想要一些没有它的方法,这就是为什么我建议修改发电机。很高兴你找到了解决方案! – moondaisy