使用 Node.JS 使用来自 Apple 的 .p8 文件签署 JWT

And*_*zer 4 node.js jwt app-store-connect

我发现这个 ruby​​ 脚本完全满足了我的需要。使用 .p8 签署 JWT

https://shashikantjagtap.net/wwdc18-a-basic-guide-to-app-store-connect-api/

但是我该如何在 Node.JS 中完成这部分呢?

private_key = OpenSSL::PKey.read(File.read(path_to_your_private_key/AuthKey_#{KEY_ID}.p8))

Fel*_*Dev 6

你不需要使用任何花哨的东西。

const privateKey = fs.readFileSync("./AuthKey_123456789Z.p8")

将很好地读取该文件,然后您可以将其与 JWT 创建之类的东西一起使用,例如jsonwebtoken, .p8 只是一个文本文件。您还可以添加utf8读取文件,如下所示:

fs.readFileSync("./AuthKey_123456789Z.p8", 'utf8')

然后如果你 console.log()privateKey你应该看到你的 .p8 文件,如下所示:

-----BEGIN PRIVATE KEY-----
0GIBBERISHGIBBERISHGIBBERISHGIBBERISHGIBBERISHGIBBERISHQgS/GIBBERISHf+lol
GIBBERISHukEMK5JaG123123456456YBLABLABLABLABLABLAATH8mUGIBBERISH
GIBBERISHUPVOTETHISYESALIENFUCKERISAGREATBANDUPVOTETHISGIBBERISH
12345678Z
-----END PRIVATE KEY-----
Run Code Online (Sandbox Code Playgroud)

但就 jsonwebtoken(npm 包)而言,是否使用 'utf8' 参数并不重要。