質問編集履歴
6
追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -68,4 +68,7 @@
|
|
68
68
|
}
|
69
69
|
}
|
70
70
|
task.resume()
|
71
|
-
```
|
71
|
+
```
|
72
|
+
|
73
|
+
**追記**
|
74
|
+
9/19 17:20に[2]のコードを少し修正しました。(質問の内容には影響してません)
|
5
修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -44,7 +44,8 @@
|
|
44
44
|
|
45
45
|
**[2]AnyObjectを使ったコード**
|
46
46
|
```swift
|
47
|
-
var
|
47
|
+
var user: AnyObject?
|
48
|
+
var location: AnyObject?
|
48
49
|
|
49
50
|
let url = URL(string: "url")
|
50
51
|
let request = NSMutableURLRequest(URL:url!)
|
@@ -57,10 +58,11 @@
|
|
57
58
|
do {
|
58
59
|
let parsedData : AnyObject = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions(rawValue: 0))
|
59
60
|
//代入
|
60
|
-
|
61
|
+
user = parsedData["User"]
|
62
|
+
location = parsedData["Location"]
|
61
63
|
//表示
|
62
|
-
print(
|
64
|
+
print(user)
|
63
|
-
print(
|
65
|
+
print(location)
|
64
66
|
} catch let error1 as NSError {
|
65
67
|
print(error)
|
66
68
|
}
|
4
コード修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -24,10 +24,9 @@
|
|
24
24
|
let postString = "id=1"
|
25
25
|
|
26
26
|
let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
|
27
|
-
|
28
27
|
do {
|
29
28
|
let parsedData = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String:Any]
|
30
|
-
|
29
|
+
//代入
|
31
30
|
user = parsedData["User"] as! [[String:Any]]
|
32
31
|
location = parsedData["Location"] as! [[String:Any]]
|
33
32
|
//表示
|
@@ -36,13 +35,12 @@
|
|
36
35
|
} catch let error as NSError {
|
37
36
|
print(error)
|
38
37
|
}
|
39
|
-
|
40
38
|
}
|
41
39
|
task.resume()
|
42
40
|
```
|
43
41
|
|
44
42
|
なぜこのような質問をしたかというと、
|
45
|
-
swift2の時に、AnyObjectを使っていた時は、下のコードのように変数としてはシンプルな形跡でも使えたので、気になり質問しました。
|
43
|
+
swift2の時に、AnyObjectを使っていた時は、下の[2]のコードのように変数としてはシンプルな形跡でも使えたので、気になり質問しました。
|
46
44
|
|
47
45
|
**[2]AnyObjectを使ったコード**
|
48
46
|
```swift
|
@@ -58,6 +56,7 @@
|
|
58
56
|
data, response, error in
|
59
57
|
do {
|
60
58
|
let parsedData : AnyObject = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions(rawValue: 0))
|
59
|
+
//代入
|
61
60
|
users = parsedData
|
62
61
|
//表示
|
63
62
|
print(users["User"])
|
3
わかりやすく修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -10,9 +10,10 @@
|
|
10
10
|
]}
|
11
11
|
|
12
12
|
|
13
|
-
このコードで適切でしょうか?
|
13
|
+
この[1]のコードで適切でしょうか?
|
14
14
|
エラーは出ていません。
|
15
|
+
|
15
|
-
**Anyを使ったコード**
|
16
|
+
**[1]Anyを使ったコード**
|
16
17
|
```swift
|
17
18
|
var user:[[String:Any]]?
|
18
19
|
var location:[[String:Any]]?
|
@@ -25,14 +26,15 @@
|
|
25
26
|
let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
|
26
27
|
|
27
28
|
do {
|
28
|
-
|
29
|
+
let parsedData = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String:Any]
|
29
30
|
|
30
|
-
|
31
|
+
user = parsedData["User"] as! [[String:Any]]
|
31
|
-
|
32
|
+
location = parsedData["Location"] as! [[String:Any]]
|
33
|
+
//表示
|
32
|
-
|
34
|
+
print(user)
|
33
|
-
|
35
|
+
print(location)
|
34
36
|
} catch let error as NSError {
|
35
|
-
|
37
|
+
print(error)
|
36
38
|
}
|
37
39
|
|
38
40
|
}
|
@@ -42,7 +44,7 @@
|
|
42
44
|
なぜこのような質問をしたかというと、
|
43
45
|
swift2の時に、AnyObjectを使っていた時は、下のコードのように変数としてはシンプルな形跡でも使えたので、気になり質問しました。
|
44
46
|
|
45
|
-
**AnyObjectを使ったコード**
|
47
|
+
**[2]AnyObjectを使ったコード**
|
46
48
|
```swift
|
47
49
|
var users: AnyObject?
|
48
50
|
|
@@ -57,6 +59,7 @@
|
|
57
59
|
do {
|
58
60
|
let parsedData : AnyObject = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions(rawValue: 0))
|
59
61
|
users = parsedData
|
62
|
+
//表示
|
60
63
|
print(users["User"])
|
61
64
|
print(users["Location"])
|
62
65
|
} catch let error1 as NSError {
|
2
コード修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -6,8 +6,7 @@
|
|
6
6
|
{"id":"2","user_name":"B"}
|
7
7
|
],
|
8
8
|
"Location":[
|
9
|
-
{"id":"1","location_name":"tokyo"
|
9
|
+
{"id":"1","location_name":"tokyo","test":1}
|
10
|
-
{"id":"2","location_name":"Osaka"}
|
11
10
|
]}
|
12
11
|
|
13
12
|
|
@@ -56,8 +55,8 @@
|
|
56
55
|
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) {
|
57
56
|
data, response, error in
|
58
57
|
do {
|
59
|
-
let
|
58
|
+
let parsedData : AnyObject = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions(rawValue: 0))
|
60
|
-
users =
|
59
|
+
users = parsedData
|
61
60
|
print(users["User"])
|
62
61
|
print(users["Location"])
|
63
62
|
} catch let error1 as NSError {
|
1
わかりやすく修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
|
14
14
|
このコードで適切でしょうか?
|
15
15
|
エラーは出ていません。
|
16
|
-
|
16
|
+
**Anyを使ったコード**
|
17
17
|
```swift
|
18
18
|
var user:[[String:Any]]?
|
19
19
|
var location:[[String:Any]]?
|
@@ -42,6 +42,8 @@
|
|
42
42
|
|
43
43
|
なぜこのような質問をしたかというと、
|
44
44
|
swift2の時に、AnyObjectを使っていた時は、下のコードのように変数としてはシンプルな形跡でも使えたので、気になり質問しました。
|
45
|
+
|
46
|
+
**AnyObjectを使ったコード**
|
45
47
|
```swift
|
46
48
|
var users: AnyObject?
|
47
49
|
|