AppStoreConnectAPI 之token生成

App Store Connect API的使用主要分为三步

1、在App Store Connect 里面创建密钥(要使用账户持有人的账号才有权限)
2、获取 JSON Web Token (JWT)https://jwt.io/
3、使用JWT生成的token发送请求

按照下图指示去生成密钥

image.png

image.png

然后点击➕号去生成密钥,之后下载生成好的密钥文件。
记得保存好,因为这个密钥文件只能下载一次。如果密钥丢失只能通过编辑撤销此密钥重新生成新密钥。撤销的密钥会显示30天。
此步骤主要生成下面三个有用信息

  • IssuerID
  • 密钥ID
  • 密钥文件

获取 JSON Web Token (JWT)

  • 安装jwt 如果无法安装请更换源为:[https://gems.ruby-china.com](https://gems.ruby-china.com/)
sudo gem install jwt
  • 获取JWT
    创建ruby脚本写如下代码
require 'base64'
require 'jwt'

ISSUER_ID = "828a67a2-29f8-4d8f-b1a6-26b123456789"
KEY_ID = "9Q2W123456"

private_key = OpenSSL::PKey.read(File.read("/Users/nelson/key/AuthKey_9Q2W265678.p8"))

token = JWT.encode(
    {
        iss: ISSUER_ID,
        exp: Time.now.to_i + 20 *60,
        aud: "appstoreconnect-v1"
    },
    private_key,
    "ES256",
    header_fields={
        kid: KEY_ID
    }
)

puts token

注意:ISSUER_ID 为密钥页面的Issuer ID、KEY_ID 为密钥ID、private_key 为密钥路径。生成的JWT有效时间只有20分钟,20分钟后需要重新获取。

发送请求

在获取到JWT之后,需要将JWT添加到请求头中,格式为:

curl -v -H 'Authorization: Bearer [signed token]' "https://api.appstoreconnect.apple.com/v1/apps"

将 [signed token] 替换为你获取到的JWT

你可能感兴趣的:(AppStoreConnectAPI 之token生成)