通过Symfony2从post Multipart(Content-Disposition: form-data)获取数据

6

使用AngularJS时,我可以在一个请求中提交表单数据和文件。但是在Symfony2控制器中无法正确处理数据。

我只能通过$request->getContent()得到完整的数据字符串,但它没有被解析。

以下是更多详细信息:

1- 我像这个例子一样发送数据,它可以工作 => http://shazwazza.com/post/Uploading-files-and-JSON-data-in-the-same-request-with-Angular-JS

2- 这些是发送的数据:

-----------------------------23743060120122
Content-Disposition: form-data; name="model"

{"type_inventaire_id":"8","profondeur_id":"2","code_pays_elv":"FR"}
-----------------------------23743060120122
Content-Disposition: form-data; name="file"; filename="importChep.txt"
Content-Type: text/plain

69182002
22096034
22096033
00110011
//69182007
69182003

-----------------------------23743060120122

3 - 我只能通过$request->getContent()获取数据,但它没有被解析。我希望像这样获取:

$file = $request->files->get('file');
$model = $request->get('model');

我寻找了一整天的解决方案,但没有找到任何东西...

有人有什么想法吗?

1个回答

4

您是在进行POST请求还是PUT请求?我发现,当使用PUT方法时,Symfony不会让您访问属性;但是,如果使用POST,则应该能够访问您的数据:

$file = $request->files->get('file');
$model = $request->request->get('model');

1
这是一个POST请求。我认为问题在于MULTIPART。 - C2dric
你找到解决方法了吗? - jsaddwater

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接