创建 Apple Music 开发者令牌

Sta*_*cke 3 xcode ios jwt apple-musickit

我正在尝试使用 JWT.io 为 Apple Music api (ObjC) 创建一个 JWT,并且由于某种原因,当我按照 Apple 在使用 (ES256) 的文档中说的格式时,它没有生成令牌。有谁知道如何为 xcode 设置 Apple Music api 令牌?

Kla*_*aas 6

您首先必须使用Apple 的本指南创建 MusicKit 标识符和私钥。然后可以在纯 Swift 中使用IBM 的 Swift-JWT轻松创建令牌。

它或多或少只是对 SwiftJWT API 的调用:

let teamId = "yourTeamID"
let keyId = "yourKeyID"
let keyFileUrl = URL(fileURLWithPath:"/pathToYour/key.p8")

struct MyClaims: Claims {
    let iss: String
    let iat: Date?
    let exp: Date?
}

let myHeader = Header(kid: keyId)
let myClaims = MyClaims(iss: teamId, iat: Date(), exp: Date() +  24 * 60 * 60)
var myJWT = SwiftJWT.JWT(header: myHeader, claims: myClaims)

let token = try! myJWT.sign(using: .es256(privateKey: try! String(contentsOf: keyFileUrl).data(using: .utf8)!))
Run Code Online (Sandbox Code Playgroud)

我使用 Swift 包管理器创建了一个简单的示例和一个命令行工具:SwiftJWTSample


jer*_*yms 5

当前有 3rd 方工具可用于创建 Apple Music 开发者令牌(例如:https : //github.com/pelauimagineering/apple-music-token-generator)。尝试使用其中之一来查看是否有效。