spring - 当 POST 参数位于 URL 中时,Spring 3 中如何处理 POST 参数?

标签 spring jakarta-ee spring-mvc java-ee-6 java-ee-5

我通常检索如下 POST 参数:

@RequestMapping(method = RequestMethod.POST)
public ModelAndView create(
    @RequestParam(value = "first_name", required = false) String firstName,
    HttpServletRequest request
) {

但是如果 URL 中包含一些参数(例如 http://example.com/post/path?last_name=Smith)怎么办?当 RequestMapping 为 POST 时,Spring 是否应该从 URL 和 POST 数据中获取所有参数?

基本上,Facebook 通过 POST 发送一个signed_request 参数,同时通过 URL 参数发送其他参数,例如 request_ids。我需要两者都得到。

最佳答案

But what if some parameters are in the URL like http://example.com/post/path?last_name=Smith? Is Spring supposed to grab all the parameters from both the URL and the POST data when RequestMapping is POST?

是的,spring将获取POST请求的所有参数值(形式和url)。但就你而言

 @RequestParam(value = "first_name", required = false) String firstName, 

将为空。因为在你的url中,参数名称是last_name。 :D

关于spring - 当 POST 参数位于 URL 中时,Spring 3 中如何处理 POST 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7470320/

相关文章:

java - 以错误的顺序显示消息

mysql - JPQL @ManyToMany 查询

java - Wildfly 中的 JASPIC 客户端登录

forms - Spring MVC ModelAttribute 字段为 Null 而不是表单输入值

java - Spring/Hibernate 测试 - 完成后如何删除模式?

java - Spring 事务参数化测试和 Autowiring

jpa - JakrataEE 代码在带有 JTA 数据源的 TomEE 上运行,但由于 RESOURCE_LOCAL 配置而失败

java - 为什么 Spring Bean Self Invocation 在这里为 Transaction 工作

java - jasypt ZeroSaltGenerator在Spring + Hibernate中生成不同的加密字符串

java - 为什么 Spring 和 Struts MVC 为其 Controller 类实现单例模式?