这是适用于 App Store 服务器 API 和 App Store 服务器通知 的 Python 服务器库。同时还提供 Swift、Node.js 和 Java 版本。
pip install app-store-server-library
要使用 App Store 服务器 API 或创建促销优惠签名,需要从 App Store Connect 下载签名密钥。要获取此密钥,您必须拥有管理员角色。转到"用户和访问">"集成">"应用内购买"。在这里,您可以创建和管理密钥,以及找到您的发行者 ID。使用密钥时,您还需要密钥 ID 和发行者 ID。
从 Apple PKI 网站的 Apple 根证书部分下载并存储根证书。将这些证书作为数组提供给 SignedDataVerifier,以验证签名数据是否来自 Apple。
from appstoreserverlibrary.api_client import AppStoreServerAPIClient, APIException from appstoreserverlibrary.models.Environment import Environment private_key = read_private_key("/path/to/key/SubscriptionKey_ABCDEFGHIJ.p8") # 实现可能会有所不同 key_id = "ABCDEFGHIJ" issuer_id = "99b16628-15e4-4668-972b-eeff55eeff55" bundle_id = "com.example" environment = Environment.SANDBOX client = AppStoreServerAPIClient(private_key, key_id, issuer_id, bundle_id, environment) try: response = client.request_test_notification() print(response) except APIException as e: print(e)
from appstoreserverlibrary.models.Environment import Environment from appstoreserverlibrary.signed_data_verifier import VerificationException, SignedDataVerifier root_certificates = load_root_certificates() enable_online_checks = True bundle_id = "com.example" environment = Environment.SANDBOX app_apple_id = None # 对于生产环境,必须提供 appAppleId signed_data_verifier = SignedDataVerifier(root_certificates, enable_online_checks, environment, bundle_id, app_apple_id) try: signed_notification = "ey.." payload = signed_data_verifier.verify_and_decode_notification(signed_notification) print(payload) except VerificationException as e: print(e)
from appstoreserverlibrary.api_client import AppStoreServerAPIClient, APIException, GetTransactionHistoryVersion from appstoreserverlibrary.models.Environment import Environment from appstoreserverlibrary.receipt_utility import ReceiptUtility from appstoreserverlibrary.models.HistoryResponse import HistoryResponse from appstoreserverlibrary.models.TransactionHistoryRequest import TransactionHistoryRequest, ProductType, Order private_key = read_private_key("/path/to/key/SubscriptionKey_ABCDEFGHIJ.p8") # 实现可能会有所不同 key_id = "ABCDEFGHIJ" issuer_id = "99b16628-15e4-4668-972b-eeff55eeff55" bundle_id = "com.example" environment = Environment.SANDBOX client = AppStoreServerAPIClient(private_key, key_id, issuer_id, bundle_id, environment) receipt_util = ReceiptUtility() app_receipt = "MI.." try: transaction_id = receipt_util.extract_transaction_id_from_app_receipt(app_receipt) if transaction_id != None: transactions = [] response: HistoryResponse = None request: TransactionHistoryRequest = TransactionHistoryRequest( sort=Order.ASCENDING, revoked=False, productTypes=[ProductType.AUTO_RENEWABLE] ) while response == None or response.hasMore: revision = response.revision if response != None else None response = client.get_transaction_history(transaction_id, revision, request, GetTransactionHistoryVersion.V2) for transaction in response.signedTransactions: transactions.append(transaction) print(transactions) except APIException as e: print(e)
from appstoreserverlibrary.promotional_offer import PromotionalOfferSignatureCreator import time private_key = read_private_key("/path/to/key/SubscriptionKey_ABCDEFGHIJ.p8") # 实现可能会有所不同 key_id = "ABCDEFGHIJ" bundle_id = "com.example" promotion_code_signature_generator = PromotionalOfferSignatureCreator(private_key, key_id, bundle_id) product_id = "<product_id>" subscription_offer_id = "<subscription_offer_id>" application_username = "<application_username>" nonce = "<nonce>" timestamp = round(time.time()*1000) base64_encoded_signature = promotion_code_signature_generator.create_signature(product_id, subscription_offer_id, application_username, nonce, timestamp)
只有最新的主要版本库会收到更新,包括安全更新。因此,建议更新到新的主要版本。


职场AI,就用扣子
AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!


多风格AI绘画神器
堆友平台由阿里巴巴设计团队创建,作为一款AI驱动的设计工具,专为设计师提供一站式增长服务。功能覆盖海量3D素材、AI绘画、实时渲染以及专业抠图,显著提升设计品质和效率。平台不仅提供工具,还是一个促进创意交流和个人发展的空间,界面友好,适合所有级别的设计师和创意工作者。


零代码AI应用开发平台
零代码AI应用开发平台,用户只需一句话简单描述需求,AI能自动生成小程序、APP或H5网页应用,无需编写代码。


免费创建高清无水印Sora视频
Vora是一个免费创建高清无水印Sora视频的AI工具


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速 生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。


AI一键生成PPT,就用博思AIPPT!
博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。


AI赋能电商视觉革命,一站式智能商拍平台
潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。
最新AI工具、AI资讯
独家AI资源、AI项目落地

微信扫一扫关注公众号