Java POST API 使用@PathParam 和 List 对象调用 Postman

Java POST API call with Postman using @PathParam and List object

为了我的项目要求,我在 JAVA 中创建了一个 API,它接受如下 2 个参数

getSimilarImages(@PathParam("rbcCode") String rbcCode, List<String> fieldNames)

我是 POSTMAN 应用程序的新手。

谁能教我如何使用 POSTMAN 调用此 API。

下面是我的控制器文件代码。

@Controller
@Path("/services/AIMLServices")
public class AIMLController {

private static Logger LOG = LogManager.getLogger(AIMLController.class);

@Autowired
AIMLService aimlService;

@POST
@Path("/getSimilarImages/{rbcCode}")
@Produces(MediaType.APPLICATION_JSON)
public String getSimilarImages(@PathParam("rbcCode") String rbcCode, List<String> fieldNames) {
    LOG.info("IN getSimilarImages() API");
    System.out.println("IN getSimilarImages() API rbcCode=" + rbcCode + " No of fields=" + fieldNames.size());
    return aimlService.getSimilarImages(rbcCode, fieldNames).toString();
}

}

我在 POSTMAN 中尝试了以下设置,

Doing a post call with the below URL by passing rbcCode
http://localhost:4990/dev/acs/admin/fm/api/services/AIMLServices/getSimilarImages/BELK

And under Body raw type as JSON, I am passing list like below
["a","b","c"]

但是没有用。

我认为您需要在您的方法中添加 @ResponseBody 并使用 @RequestBody 作为您的列表参数。

另外正如其他人提到的,您需要在 @Path

中指定您的路径参数