I'm trying to send token which I got in didRegisterForRemoteNotificationsWithDeviceToken
to the server. But I got an error while sending: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Invalid type in JSON write (Foundation._SwiftNSData)
. For requests I use Alamofire
framework. My code:
func signUp(withToken token: Data, completion: (Error) -> Void) {
let parameters: Parameters = ["registration_id": token]
print("token = \(token)")
Alamofire.request(baseUrl + signUpPath, method: .post, parameters: parameters, encoding: JSONEncoding.default).responseJSON(completionHandler: {response in
})
}
Print
shows me: token = 32 bytes
. Any suggestions? Maybe I need some additional steps with Data
type before send it to the server?
UPDATE
I have tried to convert token to NSString
type but got nil
let tokenNSString: NSString? = NSString(data: token, encoding: String.Encoding.utf8.rawValue)
print("nsstrgin from token = \(tokenNSString)")