使用JWT获取Apple Music SDK的userToken时出错

我正在尝试使用JWT的developerToken获取Apple Music SDK的userToken失败。 我使用了pelauimagineering / apple-music-token-generator,我可以得到一个有效的静态userToken。 但苹果建议动态,所以我试图再次使用JWT。

有人可以告诉我,我的代码有什么问题吗? 谢谢

func fetchDeveloperToken() -> String? { func fetchDeveloperToken() -> String? { let iat = Date().timeIntervalSince1970 let days = TimeInterval(24*60*60*120) //120 days let exp = TimeInterval(iat + days) let kid = "TBESJXXXXX" let iss = "KQ6Z6XXXXX" let alg = "ES256" let secret = "MIGTAgEAMBMGByqEU7ZHQsoVfmKCCxS5W6BnCgCgYIKoZIzj0AAQcggNoN7dTkNG/8timkkf+Z2toogAqN41YgOXXXXXXXXXXXXXXXXXXsecretkey" let header:[AnyHashable:Any] = ["alg":alg, "kid":kid] let payload:[AnyHashable:Any] = ["iss": iss, "iat": iat, "exp": exp] let algorithm256 = JWTAlgorithmHS256() return JWT.encodePayload(payload, withSecret: secret, withHeaders: header, algorithm: algorithm256) } 

Apple要求你使用ES256算法,而不是HS256,我也遇到了同样的问题。 你正在使用的JWT图书馆不支持ES256,你可以在这里看到。 iOS上列出的唯一支持它的其他库就是这个