【问题标题】:Cannot parse JSON data from Socket.IO using JSONJoy无法使用 JSONJoy 解析来自 Socket.IO 的 JSON 数据
【发布时间】:2015-12-30 04:28:00
【问题描述】:

我正在尝试使用 JSONJoy 转换从 Socket.IO 接收的 JSON。我有 JSONJoy 协议的以下结构

struct Order: JSONJoy {
    let location: String?
    let username: String?

    init(_ decoder: JSONDecoder) {
        location = decoder["location"].string
        username = decoder["username"].string
    }
  }

我已经这样设置了我的套接字

socket.on("order") {data, ack in
    let order = Order(JSONDecoder(data))
    print(order)
}

响应总是

Order(location: nil, username: nil)

订单是这样发出的

var order = JSON.stringify("{ 'username': 'Test', 'location': 'Start'}");
localSocket.emit('order', order);

我能够确认 iOS 和服务器端点上的连接。

【问题讨论】:

    标签: ios json node.js swift socket.io


    【解决方案1】:

    你在一个字符串上调用JSON.stringify。要么只发出字符串,要么对对象进行字符串化。

    例如

    var order = JSON.stringify({username: 'Test', location: 'Start'});
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-18
      • 1970-01-01
      • 2016-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多