質問編集履歴

6

追記3

2020/07/03 10:55

投稿

kazoogon
kazoogon

スコア281

test CHANGED
File without changes
test CHANGED
@@ -127,3 +127,17 @@
127
127
  [object File]では値が取得できないのか、保存もされません。
128
128
 
129
129
  何か勘違いしていないか確認できたら幸いです。
130
+
131
+
132
+
133
+ ## 追記3
134
+
135
+ [object File]はただの文字列でしたので、FileReaderクラスを使用し、ファイルそのもののデータを送信してみましたが結果は一緒でした
136
+
137
+ ```
138
+
139
+ //こういうファイルそのもののデータ
140
+
141
+ data:image/png;base64,iVBORw0...................................
142
+
143
+ ```

5

追記→追記2に変更

2020/07/03 10:55

投稿

kazoogon
kazoogon

スコア281

test CHANGED
File without changes
test CHANGED
@@ -96,7 +96,7 @@
96
96
 
97
97
 
98
98
 
99
- ## *追記
99
+ ## *追記2
100
100
 
101
101
  下記の様なデータをFormData.append('file', data)としてサーバーに送る
102
102
 

4

追記

2020/06/22 18:46

投稿

kazoogon
kazoogon

スコア281

test CHANGED
File without changes
test CHANGED
@@ -93,3 +93,37 @@
93
93
  ```
94
94
 
95
95
  となると、このデータをjs側で作成するのがさらに分からなくなりましたが。。。汗
96
+
97
+
98
+
99
+ ## *追記
100
+
101
+ 下記の様なデータをFormData.append('file', data)としてサーバーに送る
102
+
103
+ (このデータはinputで得られたfile objectです)
104
+
105
+ ![イメージ説明](42c6733b62eb02e39f8e49a591907063.png)
106
+
107
+
108
+
109
+ サーバー側でこの値を Rails.logger.info を使用し表示させると下記のように表示される
110
+
111
+ ```
112
+
113
+ [object File]
114
+
115
+ ```
116
+
117
+ ちなみにviewから普通にsubmitさせた場合、サーバー側では↓のように表示
118
+
119
+ ```
120
+
121
+ #<ActionDispatch::Http::UploadedFile:0x0055ee195fd950>
122
+
123
+ ```
124
+
125
+
126
+
127
+ [object File]では値が取得できないのか、保存もされません。
128
+
129
+ 何か勘違いしていないか確認できたら幸いです。

3

題名変更

2020/06/22 18:45

投稿

kazoogon
kazoogon

スコア281

test CHANGED
@@ -1 +1 @@
1
- Railsのviewから普通にsubmitでファイルuploadしていたのを、ajaxでuploadするときのデータの作り方
1
+ Railsのviewからsubmitでファイルuploadしていたのを、ajaxでuploadするときのデータの作り方
test CHANGED
File without changes

2

追記1

2020/06/20 21:44

投稿

kazoogon
kazoogon

スコア281

test CHANGED
File without changes
test CHANGED
@@ -53,3 +53,43 @@
53
53
  このデータをクライエント側で作ればよいが、tempfileやActionDispatchなどをどのように作成すれば良いのか不明で質問させていただきました。
54
54
 
55
55
  よろしくお願いいたします。
56
+
57
+
58
+
59
+ ## *追記
60
+
61
+ サーバー側で送られるデータは下記の通りでしたが (ここではdataという変数とします)
62
+
63
+ ```
64
+
65
+ {
66
+
67
+ "file"=>#<ActionDispatch::Http::UploadedFile:0x0055d8dc65deb0
68
+
69
+ @tempfile=#<Tempfile:/tmp/RackMultipart20200619-23-1ajva0e>,
70
+
71
+ @original_filename="hogeA.png",
72
+
73
+ @content_type="image/png",
74
+
75
+ @headers="Content-Disposition: form-data; name=\"[hoge_groups][][file]\";
76
+
77
+ xxxfilename=\"hogeA.png\"\r\nContent-Type: image/png\r\n">
78
+
79
+
80
+
81
+ "file" => (二個目のデータ1っ個目と同じように)...
82
+
83
+ }
84
+
85
+ ```
86
+
87
+ 実際にrails内でsaveされているデータはここのfile部分(data[:file])のみでした。
88
+
89
+ ```
90
+
91
+ "file"=>#<ActionDispatch::Http::UploadedFile:0x0055d8dc65deb0
92
+
93
+ ```
94
+
95
+ となると、このデータをjs側で作成するのがさらに分からなくなりましたが。。。汗

1

題名の変更

2020/06/20 07:41

投稿

kazoogon
kazoogon

スコア281

test CHANGED
@@ -1 +1 @@
1
- Railsのviewから普通にsubmitでファイルuploadしていたのを、ajaxでuploadするとき
1
+ Railsのviewから普通にsubmitでファイルuploadしていたのを、ajaxでuploadするときのデータの作り方
test CHANGED
File without changes