我得到了两个请求uri中的一个,我不知道我将收到哪一个:
/?code=someAuthorizationCode&state=someState
/?error=someError&state=someState
我使用String[] redirectURIQueryParameters = exchange.getRequestURI().toString().split("[?/&]+");
来获取参数及其对应的值。按升序索引打印字符串会得到一个空字符串,然后是code=someAuthorizationCode
或error=someError
,然后是state=someState
。
我理解从数组的第二个字符串开始确定返回的参数及其相应值是可能的,但我确信有一种更清晰的方法来做到这一点。从这些uri中提取参数的最有效方法是什么?
提前感谢。
在控制器中使用Map作为参数,您将获得它们作为键值对。