当缺少必需的rquest参数时,如何通知调用者?

我将spring mvc用于宁静的http api。请求参数可以根据需要进行注释

@RequestParam(value = "group", required = true) String someParam

在不带必需参数的情况下调用api时,会返回一些难看的信息。

HTTP/1.1 400 Bad Request

Content-Type: text/html;charset=ISO-8859-1

Cache-Control: must-revalidate,no-cache,no-store

Content-Length: 1380

Server: Jetty(8.1.9.v20130131)

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>

<title>Error 400 Bad Request</title>

</head>

<body><h2>HTTP ERROR 400</h2>

<p>Problem accessing /api/brokers. Reason:

<pre>Bad Request</pre></p><hr /><i><small>Powered by Jetty://</small></i><br/>

<br/>

</body>

</html>

有可能捕获到此类错误,以便我可以通知呼叫者所缺少的内容。

回答:

您需要捕获MissingServletRequestParameterException

@ExceptionHandler(MissingServletRequestParameterException.class)

public String missingParamterHandler(Exception exception) {

/*inspect and exception and obtain meaningful message*/

return "default-error-view"; /*view name of your erro jsp*/

}

以上是 当缺少必需的rquest参数时,如何通知调用者? 的全部内容, 来源链接: utcz.com/qa/407394.html

回到顶部