今天在對項目使用proguard混淆代碼後,啓動服務報錯RequestParam.value() was empty on parameter 1
很奇怪,混淆前可以正常啓動。
最後定位到是有個接口的參數使用了@RequestParam 但沒有設置value值:
錯誤示例:
@PostMapping(value = "url")
public ResponseData create(@RequestParam String data);
正確示例:
@PostMapping(value = "url")
public ResponseData create(@RequestParam(value = "data") String data);
或
@PostMapping(value = "url")
public ResponseData create(@RequestParam("data") String data);