Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Spring控制器中检索表单/POST参数?_Java_Spring_Spring Mvc_Mailchimp_Form Parameter - Fatal编程技术网

Java 如何在Spring控制器中检索表单/POST参数?

Java 如何在Spring控制器中检索表单/POST参数?,java,spring,spring-mvc,mailchimp,form-parameter,Java,Spring,Spring Mvc,Mailchimp,Form Parameter,我有以下回应,应该来自MailChimpwebhook URL 这是行主体: RAW BODY type=usub&fired_at=2015-07-23+17%3A19%3A34&data%5Baction%5D=unsub&data%5Breason%5D=manual&data%5Bid%5D=9383uy636&data%5Bemail%5D=youremail%40YOURDOMAIN.com&data%5Bemail_type

我有以下回应,应该来自MailChimpwebhook URL

这是行主体:

RAW BODY

    type=usub&fired_at=2015-07-23+17%3A19%3A34&data%5Baction%5D=unsub&data%5Breason%5D=manual&data%5Bid%5D=9383uy636&data%5Bemail%5D=youremail%40YOURDOMAIN.com&data%5Bemail_type%5D=html&data%5Bip_opt%5D=202.9.3.003&data%5Bweb_id%5D=404004&data%5Bmerges%5D%5BEMAIL%5D=YOUREMAIL%40YOURDOMAIN.com&data%5Bmerges%5D%5BFNAME%5D=NAME&data%5Bmerges%5D%5BLNAME%5D=LASTNAME&data%5Blist_id%5D=2288883
 FORM/POST PARAMETERS

fired_at: 2015-07-22 12:19:34
data[email]: YOUREMAIL@DOMAINNAME.com
data[id]: 56775409ta
data[web_id]: 09833944
data[merges][EMAIL]: YOUREMAIL@DOMAINNAME.com
type: unsub
data[list_id]: 99884hy372
data[merges][FNAME]: Name
data[ip_opt]: 202.0.9.3333
data[reason]: manual
data[email_type]: html
data[action]: unsub
data[merges][LNAME]: LastName

**QUERYSTRING key: a4483983hu473004884j0x**

HEADERS

Accept: */*
Total-Route-Time: 0
Host: requestb.in
Connection: close
Content-Length: 395
User-Agent: MailChimp.com
Connect-Time: 0
Via: 1.1 vegur
X-Request-Id: 6633d8-653e-4cea-884j-9933ju4773h
Content-Type: application/x-www-form-urlencoded
我以前在使用Spring控制器时使用过
@RequestParameter
,但是我不确定如何从上述响应中获取数据,例如数据[merges][FNAME]

如何在Spring控制器中也获取查询字符串查询字符串键:a4483983hu473004884j0x

//I have the following code to begin with
@RequestMapping("/unsubscribewebhook")
    public ZapJasonMessage unsubscribeWebHook(
    @RequestParam("key") String key,
    @RequestParam ("data[merges][FNAME]") String firstName
) {

}

我感谢你的帮助

只需将WebRequest作为参数注入控制器POST方法,然后使用Mailchimp webhook中的给定参数请求getParameter()

e、 g:

就这些


问候。

删除了答案。MailChimp说,通过webhook发送的数据被格式化为HTTP POST数据,就像表单提交一样,而不是JSON。这意味着您应该像处理通过web页面上的表单提交的数据一样处理这些信息。我正在使用Spring..所以在控制器的方法参数中传递请求对象,并执行request.getParameter应该可以这样工作。。但是我试着打印出所有的参数,但是什么也没有出现。我想我们无法从request.getParameters…Thx@emeraldjava获取表单参数
@RequestMapping(path="/MyUrl", method=RequestMethod.POST)
public ModelAndView process(WebRequest request){
    System.out.println(request.getParameter("type"));
    System.out.println(request.getParameter("data[merges][EMAIL]"));
    return new ModelAndView([YOURVIEWHERE]);
}