我的控制器代码是这样的。
@Controller('customer')
export class CustomerController{
constructor(private readonly customerService: CustomerService){}
@Post('lookup')
async someMethod(@Body() body:any){
console.log("BEGIN -- CustomerController.someMethod");
我希望在Swagger中看到一个可以输入一些文本作为请求正文的地方,但是我看到了这个
答案 0 :(得分:2)
所以听起来好像这里发生了一些事情。 Swagger UI是用于发送请求的辅助工具,但是要做到这一点,它需要知道请求主体的形状。 any
不够好。如果您正在寻找一种可以发送任何东西的工具,那么curl或邮递员是最好的选择(至少免费)。
Nest有一个Swagger plugin,它将读取您的Typescript代码并相应地修饰您的类型和方法,但是您必须选择启用它。否则,您需要使用@nestjs/swagger
包中的装饰器来告诉Swagger方法进出所需的类型。
只要与@Body()
对应的类型具有招摇装饰器或,或者您启用了招摇插件并且具有有效的类,则招摇用户界面应显示达到预期的效果,但是使用上述方法并使用类型any
不会对您有任何帮助。
答案 1 :(得分:0)
我的端点接受未知的键/值数据,我遇到了同样的问题(我尝试了 any, unknown, Record@Body() data: Map<string, any>
为我工作了。