我正在使用以下内容检索POSTed文件:
$this->app->post(Extension::API_PREFIX . "profile/picture", array($this, 'post_profile_pic'))
->bind('post_profile_pic');
public function post_profile_pic(Request $request) {
$response = $this->app->json(array(
'file' => $request
));
return $response;
}
我使用Postman上传文件(请参阅screenshot),但请求为空:
{
"file": {
"attributes": { },
"request": { },
"query": { },
"server": { },
"files": { },
"cookies": { },
"headers": { }
}
}
然而它显然知道那里应该有一个文件。那我该如何访问该文件呢?
答案 0 :(得分:3)
PHP上传的文件不是用$ _POST发送的,而是在一个名为$ _FILES(http://php.net/manual/en/features.file-upload.post-method.php)的单独变量中发送 - 所以在你的情况下你应该看看
$this->app->files
如果您使用symfony中的默认表单组件,则文档位于http://symfony.com/doc/current/reference/forms/types/file.html#basic-usage
在simpleforms模块中,文件由
后面的行检索$files = $this->app['request']->files->get($form->getName());
使用Bolt,Silex和Symfony组件提供的基本结构。 (另见https://github.com/jadwigo/SimpleForms/blob/master/Extension.php#L505)