试图弄清楚如何在调试时从 API 漂亮打印我的响应的 json 值:
let session = URLSession(configuration: .default)
let task = session.dataTask(with: urlRequest) { data, response, error in
completion(data, response, error)
}
Run Code Online (Sandbox Code Playgroud)
在调试器中,如果我做 po 数据,这就是我得到的东西:
如何打印出数据对象中的实际 json 结构?希望看到这样的事情:
{ "firstName": "John", "lastName": "Doe", ... }
po debugPrint(data) 在这种情况下不输出任何内容。
当我print()在Swift中使用字典时,它在控制台中显得漂亮而美观,带有键和值.
object = Optional({
customerId = 111;
transactionId = 333;
extraId = 444;
})
Run Code Online (Sandbox Code Playgroud)
当我po在同一个字典上运行时,它会吐出这个无意义的转储,这非常难以阅读.
? Optional<Any>
? some : 3 elements
? 0 : 2 elements
? .0 : transactionId
- .1 : 333
? 1 : 2 elements
? .0 : customerId
- .1 : 111
? 2 : 2 elements
? .0 : extraId
- .1 : 444
Run Code Online (Sandbox Code Playgroud)
使用p就更糟糕了
(Any?) $R8 = some {
payload_data_0 = 0x0000000170e679c0 {
Swift._SwiftNativeNSDictionary = {} …Run Code Online (Sandbox Code Playgroud) 我有一个
Crashlytics.sharedInstance().setObjectValue(loginAccount, forKey: "loginAccount")
Run Code Online (Sandbox Code Playgroud)

我可以在我的项目中访问SwiftyJSONPod,所以我尝试过
print(JSON(loginAccount))
Run Code Online (Sandbox Code Playgroud)
我有
unknown
Run Code Online (Sandbox Code Playgroud)
我应该怎样做才能使我的字典更易于阅读?
import Foundation
import SwiftyJSON
public class SessionAccount : NSObject {
var id : Int?
var username : String?
var password : String?
var accountType : String?
var role : String?
var privateVlan : String?
var guestVlan : String?
var timezoneOffset : Int?
var loginTime : Date?
var cpe : CPE?
var cpeName : String?
var cpeProfiles : [Profile] = []
var deviceCount : Int?
var activeCount : Int? …Run Code Online (Sandbox Code Playgroud)