Laravel RESTful API不接收来自cURL请求的数据

时间:2015-01-10 07:41:55

标签: php rest curl laravel laravel-4

所以我有一个" Skeleton"为我的项目写的' RESTful API。我一直试图通过cURL将数据发布到store()函数。所以我用了

if(Input::hasfile('file'))

检查图像/数据是否发布并返回false。如果我通过类似于此

的cURL请求发布它,我将如何实际检测图像/数据

curl.exe --user "admin:password" --header "Content-Type: multipart/form-data" --data-binary "@vok.png" --output "out.txt" --dump-header "header.txt" http://bitdrops.co/bitdrops/public/index.php/api/v1/drop/

忽略标题和响应输出。

这是我当前的store()函数代码。

public function store()
{
    $file = Input::file('file');
    $destinationPath = public_path() . '/uploads';

    $filename = $file->getClientOriginalName();
    //$extension =$file->getClientOriginalExtension(); 
    $upload_success = Input::file('file')->move($destinationPath, $filename);

    if( $upload_success ) {
        return Response::json('success', 200);
    } else {
        return Response::json('error', 400);
    }
}

1 个答案:

答案 0 :(得分:1)

问题出现在您的cURL声明中

curl.exe --user "admin:password" --header "Content-Type: multipart/form-data" --data-binary "@vok.png" --output "out.txt" --dump-header "header.txt" http://bitdrops.co/bitdrops/public/index.php/api/v1/drop/

您没有将文件作为“文件”传递。正如您之前在解决方案中所评论的那样:

curl.exe -i --user user:pass -F file=@vok.png --output "out.html" http://bitdrops.co/bitdrops/public/index.php/api/v1/drop