在Laravel / php中本地保存blob文件(来自JS / axios)

时间:2019-07-11 16:00:27

标签: javascript php laravel axios blob

我想将blob(来自JS)保存到文件中(通过php控制器)。

我想几乎所有尝试都没有成功。这就是我得到的:我无法获取文件本身的内容。我想我不远,但是我想念一些东西。

enter image description here

这就是我尝试过的一切

public function uploadsimplefile(Request $request){
    $blob = $request->blob;
    $filename = $request->name;

    $path ="./gpx/" . $filename;

    //test 1
    file_put_contents(
        $path,
        base64_decode($blob)
    );

    //test 2
    file_put_contents(
        "./gpx/test2.jpg",
        $blob
    );

    //test 3
    $content = file_get_contents($blob); // URL of your blob object
    file_put_contents("./gpx/test3.jpg", $content);

    //test 4
    $ch = curl_init($blob);
    $fp = fopen("./gpx/test4.jpg", 'wb');
    curl_setopt($ch, CURLOPT_FILE, $fp);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_exec($ch);
    curl_close($ch);
    fclose($fp);

    //test 5
    $upload_dir = "./gpx/";
    $img = $blob;
    $data = base64_decode($img);
    $file = $upload_dir .  "test5.jpg";
    $success = file_put_contents($file, $data);
    print $success ? $file : 'Unable to save the file.';

}

0 个答案:

没有答案