苹果developerAPI 意外401错误NOT_AUTHORIZED

突然发现苹果api 接口报错,提示如下

{
	"errors": [{
		"status": "401",
		"code": "NOT_AUTHORIZED",
		"title": "Authentication credentials are missing or invalid.",
		"detail": "Provide a properly configured and signed bearer token, and make sure that it has not expired. Learn more about Generating Tokens for API Requests https://developer.apple.com/go/?id=api-generating-tokens"
	}]
}

然后去官方网址查看了下,原来是过期时间最多不能超过20分钟

也就是jwt 过期时间最多为20分钟

    def __make_jwt_headers(self):
        data = {
            "iss": self.issuer_id,
            "exp": datetime.datetime.utcnow() + datetime.timedelta(seconds=20*60),
            "aud": self.JWT_AUD
        }
        jwt_headers = {
            "alg": self.JWT_ALG,
            "kid": self.private_key_id,
            "typ": "JWT"
        }
        jwt_encoded = jwt.encode(data, self.p8_private_key, algorithm=self.JWT_ALG, headers=jwt_headers)
        headers = {
            'Authorization': 'Bearer %s' % jwt_encoded
        }
        self.headers = headers
根据 Apple 文档,会话最长持续时间为 20 分钟

https://developer.apple.com/documentation/appstoreconnectapi/generating_tokens_for_api_requests

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值