Я новичок в AWS Cognito и пытаюсь получить токен JWT при входе в систему с AWS cognito, но я получаю "сеанс" после успешного входа в систему с Cognito.
Вот мой пример код.
@IBAction func loginButtonTapped(_ sender: UIButton) {
self.view.endEditing(true)
let authDetails = AWSCognitoIdentityPasswordAuthenticationDetails(username: self.emailTextField!.text!, password: self.passwordTextField!.text! )
self.passwordAuthenticationCompletion?.setResult(authDetails)
}
Вот делегаты
extension LoginVC: AWSCognitoIdentityPasswordAuthentication {
public func getDetails(_ authenticationInput: AWSCognitoIdentityPasswordAuthenticationInput, passwordAuthenticationCompletionSource: AWSTaskCompletionSource<AWSCognitoIdentityPasswordAuthenticationDetails>) {
self.passwordAuthenticationCompletion = passwordAuthenticationCompletionSource
DispatchQueue.main.async {
if ((self.emailTextField?.text!.isEmpty)!) {
self.emailTextField?.text = authenticationInput.lastKnownUsername
}
}
}
public func didCompleteStepWithError(_ error: Error?) {
DispatchQueue.main.async {
if error != nil {
let alertController = UIAlertController(title: "Cannot Login",
message: (error! as NSError).userInfo["message"] as? String,
preferredStyle: .alert)
let retryAction = UIAlertAction(title: "Retry", style: .default, handler: nil)
alertController.addAction(retryAction)
self.present(alertController, animated: true, completion: nil)
} else {
}
}
}
}
После успешного входа в систему я получаю следующий вывод
{"ChallengeName": "SMS_MFA", "ChallengeParameters": { "CODE_DELIVERY_DELIVERY_MEDIUM": "SMS", "CODE_DELIVERY_DESTINATION": "+ ******** 6385"}, "Session": "caSCYBgnPAGNlvCAB6ifDhb1JIKNDKIJaFkld_SSQxHkondo_X0Mg8Id4FR57HlfybONtP09VkYQ4M9dmyzqMtTg6fMYLy0i-gg2iK96J9npjk-UZawo1dZa_tnkokoODjojjpVItWpsn0K5ZzLtC5sT4ktuV7urxQfnMpyu3ra1H1CJqh9diwFw_tPYikJfPQhBdxgZvC2CXBFBB64lWiJNFV-yGs9sjztgFxSfv0hDCmbIKFIQyoYY8xqHWrm9ss-My0NeEKzG8fwDiV6MX5b0kMLpKzA32F2EEFhRmArP4xS_84nZiCg7PnOnmq-БПТП-н- ic0UoM8nQoL39UcNTlJ61OmVUxvKF5-qer8HXADHxUJOChKGlZpMT_igDypFo8ziLfFkAjDoN56X8UMUojgDhIslEnL-XcdoNuxCYxVAs3O01XrkQj3WJH2ZcTgqOd-GTGh_W-aGctfTIZMfeBdS39YTALABQxrR_GjRMaedVO8dPEnFaSDMXQXnbQ8wyYgudUDrRf4uyyR359MD01aw61PunBOlLAZGw_o5-1DFIlWM2MAEXz_qWcZ7W8NsAmv4-Tk9VpCI9oIcasmxJDfQ6LStrhXBTEM_oBQCLfQv9SCBaLFeyBqRzSIQyal-PdvII0IrVB8d83hmWjs7sc1cKqF9Mt2l9mSAGN_i52_soH1gtlNJeFhpdVwWpRVqBYJtq4mxkXR9Mv_ mzgdE2H7QvcXUSYX2NgeDkyszRxKGORw-4Hn1VDONI37ndn2HF5707UZTi3tN1Vw_Bhfm9uHBwSI9OEYRvTjKRJLa2AVlq8izN0zcvS7PBKgHyYg4vTDB_VrMjjJy4Qs3EywD46ed1BTc3BTBKoiEZXnYeKtNhOC8zmNM_WnruHVfnBghfAJZ-CoYrGv04ip3ZwnWZOu1ChmbJs4E0_7YqmG-495HD8S7WnUnXSJD3cK4wuz0sA7m_iixGdyYifhCcZGdZwr0Dy5MXGZnjLKQTSj6X2vlOtPu8vhsqK6Yx3TkytfIGLH4T96Ne7orV9a6CY8_DYdwBEJmg3T0vJyZXSHHsydXgtUqeQb0XRmUX-AHMlB-bZBR2oItr_FeSebVtC7GuaYgqYqbOuxMxDRWZPS7g-BnbQhVgDT1UwQqNV8Hu-KYLbScJCkzVqzaOeMr2TJp74WXch1cHtTF9UnbXSuNylp_lZBsyAhz1VNH-WCM7BhMp50cQvaOJyXmW0kB2krp5NIYXlhFL92Sntkubqcs8ivZvKk72dr67upeQ1B0I9V8PFo1r47iazeTUVIoF-ncmLaf5VApMT555d_0kCeSnhd-Xp4Olh4cARLnKuVKemkmc_D97TnTQKLac16H609XOJXMLcGDDtUMwLYpt2XfQOI0l3xAmoL5A8jsVD87N1mpL7UqozoYn9cb6oDv5tT7nfp2oTm4OIBOHDijBYhWFnCr2S_QcNqpjpGNxxuRoxIGNAl9daTSp0hnuG6Xfl3V_h2Y1ZNdZGKoevW_EDPmkK0G "}
Я не может получить JWT маркер, который я могу использовать для потребления моего REST APIs.
Может ли кто-нибудь помочь мне здесь, что здесь можно сделать?