Это сообщение об ошибке
Could not cast value of type 'NSTaggedPointerString' (0x21877a910) to 'NSNumber' (0x218788588).
говорит нам, что идентификатор запроса JSON анализируется как строка. NSTaggedPointerString
- это специальный внутренний тип, используемый средой выполнения ObjC для представления строк.
Попробуйте это:
let requestId = responseMsg["requestId"] as! String
print("request id: \(requestId)") // Prints a string
Обратите внимание, что он может напечатать что-то похожее на число, но это не так.
JSON, который вы анализируете, вероятно, выглядит как
{
"requestId": "1",
"response": {
"code" = "SUCCESS"
},
"messageId": "ACTION_COMPLETE"
}
Обратите внимание на 1
в кавычках.