(Laravel)在数据库

时间:2016-05-30 10:33:32

标签: php database laravel request

我的流程说明:

当用户填写我的表单并上传它时,它不会上传到数据库。它会上传到基于Web的第三方应用程序,其中包含我们所有的客户信息。但是这个应用程序有一个速率限制作为安全性,因为我不能让填写表单的客户知道,我需要暂时将数据保存到我的数据库。

我已经开始运行,就像我想要的那样。但是有一个问题。

问题:

如果表单包含文件,则该文件不会上传到数据库,因为laravel不允许UploadFile对象的序列化。这是公平的,因为所有这一切都是将临时文件的目录上传到数据库,因此不会起作用。

无论哪种方式,API都希望文件正文是multipart / form-data,因此我无法从数据库中获取该文件。

解决方案?

是否可以在本地保存文件并以某种方式重做请求而无需再次手动填写表单?

我意识到这个请求有点奇怪,但我确信暂时将请求保存在数据库中供以后使用的想法是非常好的。

1 个答案:

答案 0 :(得分:0)

为了结束这个问题,我选择了Ben Swinburne建议使用guzzle。

我所做的是使用Input::file('input')->move('destination', 'filename')函数

在本地保存文件

然后我使用cron作业调用数据库来检查请求。然后,Guzzle向原始POST网址发出请求并上传整个内容。

Guzzle代码:

$fileresponse = Guzzle::post('/path/to/POST', [ 'multipart' => $arrayOfValues ] );