質問編集履歴

1

ご回答いただいた内容に沿って修正いたしました。

2020/05/13 11:47

投稿

Ka_ya_
Ka_ya_

スコア31

test CHANGED
File without changes
test CHANGED
@@ -193,3 +193,105 @@
193
193
  }
194
194
 
195
195
  ```
196
+
197
+
198
+
199
+ *コントローラークラスのAPIメソッド呼び出し箇所を修正*
200
+
201
+
202
+
203
+ ```Swift
204
+
205
+ //写真を撮影した後
206
+
207
+ func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
208
+
209
+
210
+
211
+ if let pickedImage = info[.editedImage] as? UIImage {
212
+
213
+
214
+
215
+ //イメージをbase64にエンコードする
216
+
217
+ let imageData = pickedImage.pngData()! as NSData
218
+
219
+ let imageString = imageData.base64EncodedString(options: .lineLength64Characters)
220
+
221
+
222
+
223
+ var dataList = Util.returnData(image:imageString, completion: {
224
+
225
+ result in
226
+
227
+ print(result.data1)←値が表示されない
228
+
229
+ //商品リストへ遷移する
230
+
231
+ picker.dismiss(animated: true, completion: nil)←画面遷移しない
232
+
233
+ })
234
+
235
+ }
236
+
237
+ ```
238
+
239
+ *UtilクラスのAPI呼び出し箇所の修正*
240
+
241
+ ```Swift
242
+
243
+ class Util{
244
+
245
+
246
+
247
+ class func returnData(image:String), completion: @escaping (DataList) -> Void) {
248
+
249
+ //インスタンスを用意しておく
250
+
251
+ var dataList = DataList()
252
+
253
+
254
+
255
+ //JSONデータを取得する
256
+
257
+ session.dataTask(with: request) { (data, response, error) in
258
+
259
+ if error == nil, let data = data, let response = response {
260
+
261
+
262
+
263
+ let jsonData = try! JSONSerialization.jsonObject(with: data, options: JSONSerialization.ReadingOptions.allowFragments) as? [String: [String:Any]]
264
+
265
+
266
+
267
+ if let data = jsonData?["hits"] {
268
+
269
+
270
+
271
+ let data1 = data["data1"] as! String
272
+
273
+ let data2 = data["data2"] as! String
274
+
275
+ let data3 = data["data3"] as! String
276
+
277
+ //取得した値を格納する
278
+
279
+ dataList = DataList(data1,data2,data3)
280
+
281
+ }
282
+
283
+ } else {
284
+
285
+ // API通信失敗
286
+
287
+ print(error as Any)
288
+
289
+ }
290
+
291
+ }.resume()
292
+
293
+ }
294
+
295
+ }
296
+
297
+ ```