Http 请求被拒绝,因为在Grails中找不到多部分边界
我正在尝试发送内容类型为Http 请求被拒绝,因为在Grails中找不到多部分边界,http,grails,mime,multipart,Http,Grails,Mime,Multipart,我正在尝试发送内容类型为multipart/mixed 只需在我的控制器中用行println params 但是,我一直收到一个错误:请求被拒绝,因为没有找到多部分边界 我不确定这是grails中的问题还是我的请求被弄糟了。我正在使用RESTConsole,并将内容类型设置为多部分/混合,并将以下内容作为原始正文发送: --boundary42 Content-Type: text/plain; charset=us-ascii ...plain text version of messa
multipart/mixed
只需在我的控制器中用行println params
但是,我一直收到一个错误:请求被拒绝,因为没有找到多部分边界
我不确定这是grails中的问题还是我的请求被弄糟了。我正在使用RESTConsole,并将内容类型设置为多部分/混合
,并将以下内容作为原始正文发送:
--boundary42
Content-Type: text/plain; charset=us-ascii
...plain text version of message goes here....
--boundary42
Content-Type: text/richtext
.... richtext version of same message goes here ...
--boundary42
多部分/混合
内容类型
用于带有附件的文本/普通
请求。您在申请中有附件吗?如果您不向请求发送附件,则它将抱怨多部分边界
尝试添加一个附件(比如在REST控制台中向请求添加一个虚拟文件),您应该会看到它正在工作
此内容类型主要用于电子邮件内容[SMTP]。遵循该边界,text/plain
内容将被转换为消息体。如果我发送了附件,那么错误就会消失,但是现在println params
没有打印随附件一起发送的text/plain
。例如,如果我有firstName=John&lastName=Doe
(查询参数字符串),它对我有效在原始请求正文中设置。举个例子。不幸的是,如果我这样做,我看不到参数被打印出来。请看一下这个屏幕截图:(注意,我有查询字符串和附件)我在控制台中看到的屏幕截图是:params:[FIPS.png:org.springframework.web.multipart.commons。CommonsMultipartFile@6381db12,FIPS:[png:org.springframework.web.multipart.commons。CommonsMultipartFile@6381db12],行动:[发布:保存,获取:显示,删除:删除,放置:更新],控制器:mycontroller]
Oops小混乱,当内容类型为multipart/mixed
时,请求参数在正文中不是必需的,您可以在POST时使用查询字符串。使用REST控制台中的request parameters
部分。谢谢。这将起作用。请求参数将由控制器查看。因此,这种方式(上传文件并发送查询字符串)文件上传会进入请求正文吗?我试图以某种方式模仿dropbox api的工作方式,我还问了一个单独的问题,谢谢您的帮助