java—如何使用vaadin在spring中获取查询参数?

piah890a  于 2021-06-30  发布在  Java
关注(0)|答案(3)|浏览(433)

我正在尝试从我的url获取查询参数。url如下所示: http://localhost:1001/login?continue=/teams 当我尝试获取continue参数时,得到null。

request.getParameter("continue")

返回null,因此我尝试读取整个查询字符串,但是

request.getQueryString()

仅返回以下内容: v-r=uidl&v-uiId=1 如何访问查询参数?

xxb16uws

xxb16uws1#

spring使您能够使用@requestmapping和@requestparam来获取它们。
例子:http://localhost:8080/Spring座/ex/杆?id=100

@RequestMapping(value = "/ex/bars", method = GET)
@ResponseBody
public String getBarBySimplePathWithRequestParam(
  @RequestParam("id") long id) {
    return "Get a specific Bar with id=" + id;
}

在这种情况下,您必须添加@requestparam(“continue”)注解。
您现在可以忽略@requestbody注解,但请确保您的控制器是用@requestmapping注解的,并且您的方法的参数是@requestparam。。
我在以下网站上举了这个例子:https://www.baeldung.com/spring-requestmapping
里面还有其他有趣的东西

q7solyqu

q7solyqu2#

v-r=uidl&v-uiId=1 指示您正在查看的请求是由vaadin的自动通信层发送的内部xhr请求。
看到了吗https://vaadin.com/docs/v12/flow/routing/tutorial-router-url-parameters.html#query-有关如何从显示在浏览器地址栏中的url访问查询参数的详细信息。

s4chpxco

s4chpxco3#

如果您不想使用spring mvc,可以参考以下示例:
https://vaadin.com/directory/component/url-parameter-mapping
有一些开箱即用的注解vaadin的一面,它可以帮助您的目的。
好像你可以用 @UrlParameter 方法级和类成员。因此,如果您的应用程序需要,您可以拥有更大的范围。

相关问题