Сообщения Pubnub не конвертируются в JSON в Swift - PullRequest
0 голосов
/ 09 января 2019

Согласно https://support.pubnub.com/support/solutions/articles/14000043790-can-i-send-and-or-receive-json-objects- мы можем отправлять объекты JSON в сообщениях Pubnub, и я сам делал это в своих предыдущих проектах.

Но на этот раз мне это тяжело. На отправляющей стороне я сделал следующее:

var json = [String : Any]
json["lat"] = 33.923892
json["long"] = 73.232873
json["userId"] = "abc"

И на принимающей стороне я пытаюсь разыграть это как:

let info = message.data.message.value as! [String : Any]

Но он вылетает и выдает ошибку:

Не удалось привести значение типа '__NSCFString' (0x1b69af5e8) к 'NSDictionary' (0x1b69b04e8)

Я пробовал разные решения, в том числе:

  1. Сериализация JSON.
  2. Вместо этого отправляется массив [String: Any].

Но каждый раз, когда я получаю одну и ту же ошибку. И да, я знаю, что на такие вопросы, как Не удалось привести значение типа '__NSCFString' к 'NSDictionary' , уже даны ответы. Но никто из них не работал для меня.

1 Ответ

0 голосов
/ 09 января 2019

Заменить

let info = message.data.message.value as! JSONObject 

с

let info = message.data.message.value as! String 
...