Я работаю над DeviceCheck
.Для создания JSON
веб-токена я использую библиотеку SwiftJWT
.Но я не знаю, как я генерирую JWT
для DeviceCheck
.
Код:
let contents = try String(contentsOfFile: filepath)
let headers = Header(kid: key_id)
struct MyClaims: Claims {
var iss: String
var iat: Date
var exp: Date
}
let jwt = JWT(header: headers, claims: MyClaims(iss: iss_id, iat: Date(timeIntervalSinceNow: 3600), exp: Date(timeIntervalSinceNow: 3600)))
let privateKey = contents.data(using: .utf8)!
let rsaJWTEncoder = JWTEncoder(jwtSigner: JWTSigner.es256(privateKey: privateKey))
var jwtString = try rsaJWTEncoder.encodeToString(jwt)
Во время печати JWT
я получаю нижеответ:
JWT (заголовок: SwiftJWT.Header (тип: необязательный ("JWT"), alg: необязательный ("ES256"), jku: ноль, jwk: ноль, ребенок: необязательный ("KEY_ID "), x5u: ноль, x5c: ноль, x5t: ноль, x5tS256: ноль, cty: ноль, крит: ноль), утверждения: SwiftiOSDeviceCheck.ViewController. (Неизвестный контекст в $ 104614dbc). (Неизвестный контекст в $ 104614e28).MyClaims (iss: "ISS_ID", iat: 2019-06-03 11:55:53 +0000, exp: 2019-06-03 11:55:53 +0000))
ииз API я получаю ответ ниже в почтальоне:
Невозможно проверить токен авторизации
Как я могу исправить эту проблему?