質問編集履歴
1
ソースコードの追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
### 実現したいこと
|
2
2
|
|
3
|
+
// 追記:すみません、書くべき情報が全く足りていなかったので、追加しました。
|
4
|
+
|
3
5
|
canvasで表示した画像をフォームでPOST送信し、その画像をS3バケットに保存したいです。
|
4
6
|
|
5
7
|
### 前提
|
@@ -18,6 +20,13 @@
|
|
18
20
|
is_file() expects parameter 1 to be a valid path, string given
|
19
21
|
```
|
20
22
|
|
23
|
+
Contorollerの
|
24
|
+
|
25
|
+
```
|
26
|
+
$path = Storage::disk('s3')->putFile('/', $canvas, 'public');
|
27
|
+
```
|
28
|
+
の一文が関係していると思うのですが、ちゃんと第1引数にpathを指定しているので、原因がわからないです。
|
29
|
+
|
21
30
|
### 該当のソースコード
|
22
31
|
|
23
32
|
```
|
@@ -103,10 +112,50 @@
|
|
103
112
|
|
104
113
|
```
|
105
114
|
|
115
|
+
```
|
106
|
-
|
116
|
+
// Controller
|
107
117
|
|
108
|
-
|
118
|
+
<?php
|
109
119
|
|
110
|
-
|
120
|
+
namespace App\Http\Controllers;
|
111
121
|
|
122
|
+
use Illuminate\Http\Request;
|
123
|
+
use Illuminate\Support\Facades\Storage;
|
124
|
+
use App\Models\ImagePath;
|
125
|
+
|
126
|
+
class CameraController extends Controller
|
127
|
+
{
|
128
|
+
public function index()
|
129
|
+
{
|
130
|
+
return view('capture_image');
|
131
|
+
}
|
132
|
+
|
133
|
+
public function store(Request $request)
|
134
|
+
{
|
135
|
+
$canvas = $request->input('upload_image');
|
136
|
+
|
112
|
-
|
137
|
+
if (isset($canvas)) {
|
138
|
+
$canvas = preg_replace('<data:image/jpeg;base64,>', '', $canvas);
|
139
|
+
$canvas = base64_decode($canvas);
|
140
|
+
//Storage::disk('public')->put('sample.jpeg', $canvas);
|
141
|
+
$path = Storage::disk('s3')->putFile('/', $canvas, 'public');
|
142
|
+
|
143
|
+
$image_path = new ImagePath;
|
144
|
+
//$image_path->path = asset('storage/sample.jpeg');
|
145
|
+
$image_path->path = Storage::disk('s3')->url($path);
|
146
|
+
$image_path->save();
|
147
|
+
}
|
148
|
+
|
149
|
+
return redirect(/*secure_*/url('/'));
|
150
|
+
}
|
151
|
+
|
152
|
+
public function index_video()
|
153
|
+
{
|
154
|
+
return view('capture_video_image');
|
155
|
+
}
|
156
|
+
}
|
157
|
+
```
|
158
|
+
|
159
|
+
### 試したこと
|
160
|
+
|
161
|
+
AWSのEC2上でも試してみましたが、同じエラーが出ました。
|