服务器接收苹果订阅通知

我们的服务器需要提供一个URL来接收苹果的通知,要使用HTTPS。

苹果会对这个URL发送HTTP POST请求,body是JSON格式,包含了通知的内容。

我们服务器处理成功后,应向苹果返回HTTP 200。若出现问题,需要苹果重新发送通知,可返回HTTP 50x 或 40x。

environment字段表示通知对应的环境。若为Sandbox,表示测试环境,PROD表示生产环境。unified_receipt 字段中包含了最近的交易信息。可通过其中的original_transaction_id找到对应原始订阅。notification_type 表示触发此通知的事件类型。其值如下:CANCEL:表示用户退款了,或者用户升级了订阅。(用户升级订阅后,会退款之前的订阅)DID_CHANGE_RENEWAL_PREF:表示用户更改订阅计划,会在下次订阅生效。对当前订阅无影响。DID_CHANGE_RENEWAL_STATUS:表示续订状态有改变。可检查auto_renew_status_change_date_ms和auto_renew_status字段。DID_FAIL_TO_RENEW:表示由于账单问题,续订失败。可检查is_in_billing_retry_periodDID_RECOVER:表示成功续订。这个是针对过去续订失败的订阅。INITIAL_BUY:表示第一次订阅。INTERACTIVE_RENEWAL:表示用户手动续订成功。RENEWAL:表示自动续订成功。(此字段苹果计划废弃,用DID_RECOVER代替。)下面是常见的事件和触发的通知首次购买:INITIAL_BUY升级订阅:CANCEL, DID_CHANGE_RENEWAL_STATUS, INTERACTIVE_RENEWAL降级订阅:INTERACTIVE_RENEWAL, DID_CHANGE_RENEWAL_PREF订阅已过期,重新订阅:DID_CHANGE_RENEWAL_STATUS订阅已过期,重新升级或降级订阅:INTERACTIVE_RENEWAL, DID_CHANGE_RENEWAL_STATUS用户取消订阅:DID_CHANGE_RENEWAL_STATUS用户退款:CANCEL, DID_CHANGE_RENEWAL_STATUS由于账单问题,续订失败:DID_FAIL_TO_RENEW账单问题解决,续订成功:DID_RECOVER由于账单问题,订阅被彻底取消:DID_CHANGE_RENEWAL_STATUS

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/31028.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

apple watch上watchOS网络低级别和高级别区别,以及使用tcp/udp或者websocket的限制条件

可以直接看官方文档:TN3135: Low-level networking on watchOS | Apple Developer Documentation 高级网络:包括 URLSession 中的 HTTP 和 HTTPS 支持,以及在此之上的任何代码层。 低层网络:包括网络框架、 NSStream 和任何其他…

第 402 场 LeetCode 周赛题解

A 构成整天的下标对数目 I 计数&#xff1a;遍历 h o u r s hours hours &#xff0c;记录 h o u r s [ i ] % 24 hours[i]\%24 hours[i]%24 的出现次数 class Solution {public:long long countCompleteDayPairs(vector<int>& hours) {vector<int> cnt(24);…

2024.06.14【读书笔记】丨生物信息学与功能基因组学(第十四章 细菌和古细菌基因组 第四部分)【AI测试版】

读书笔记&#xff1a;《生物信息学与功能基因组学》第十四章 - 第四部分 摘要 第十四章的第四部分聚焦于原核生物基因组的深入分析&#xff0c;探讨了基因组比较学的应用、生物信息学工具在基因组研究中的重要性&#xff0c;以及未来研究方向的展望。 目录 原核生物基因组的…

苹果的后来者居上策略:靠隐私保护打脸微软

01.苹果与微软相比更注重用户隐私 我一直是Windows的忠实用户&#xff0c;但微软疯狂地将人工智能融入一切&#xff0c;让我开始觉得应该咬咬牙换成Mac。 自小我几乎只用Windows电脑&#xff0c;所以我对MacOS一直不太适应。虽然Windows 11有其缺点&#xff0c;但总的来说&am…

Pytorch构建vgg16模型

VGG-16 1. 导入工具包 import torch.optim as optim import torch import torch.nn as nn import torch.utils.data import torchvision.transforms as transforms import torchvision.datasets as datasets from torch.utils.data import DataLoader import torch.optim.lr_…

阿里CEO个人投资的智驾公司,走了不一样的路

佑驾创新在去年8月和11月完成两轮融资&#xff0c;在今年5月底递表港交所&#xff0c;目前拿到了29家车企88款车型的量产订单。自动驾驶赛道不缺明星&#xff0c;这些因素本不足以凸显它的差异化。但是在招股书中&#xff0c;一条特殊的发展路线&#xff0c;却让佑驾创新显得不…

2024.6.20 刷题总结

2024.6.20 **每日一题** 2748.美丽下标对的数目&#xff0c;这道题可以通过暴力求解&#xff0c;也可以使用哈希表来求解&#xff0c;同时通过本题&#xff0c;我发现了C的gcd函数可以直接调用.暴力方法为两重循环遍历&#xff0c;判断他们的gcd是否为1&#xff1b;哈希表的方法…

DB9母头接口定义485

在通信技术中&#xff0c;DB9接口广泛应用于串行通信&#xff0c;尤其是在RS232和RS485标准中。虽然DB9接口最常见于RS232通信&#xff0c;但通过适当的引脚映射&#xff0c;它也可以用于RS485通信。本文将详细介绍如何定义和使用DB9母头接口进行RS485连接。 DB9母头接口简介 …

②-Ⅱ单细胞学习-组间及样本细胞比例分析(补充)

数据加载 ①单细胞学习-数据读取、降维和分群_subset函数单细胞群-CSDN博客‘ #2024年6月20日 单细胞组间差异分析升级# rm(list = ls()) library(Seurat)#数据加载(在第一步已经处理好的数据) load("scedata1.RData")#这里是经过质控和降维后的单细胞数据 tabl…

蓝牙模块在智能城市构建中的创新应用

随着科技的飞速发展&#xff0c;智能城市的概念已经逐渐从理论走向实践。物联网技术作为智能城市构建的核心驱动力&#xff0c;正在推动着城市基础设施、交通管理、环境监测等领域的深刻变革。蓝牙模块&#xff0c;作为物联网技术的重要组成部分&#xff0c;以其低功耗、低成本…

java文件IO操作

前言&#xff1a; java里面的文件操作分为文件系统操作和文件内容操作。文件系统操作主要是针对File这个类来进行操作&#xff0c;而文件内容操作总的来说有四个&#xff1a;Reader&#xff0c;Writer&#xff0c;InputStream&#xff0c;OutputStream&#xff0c;前面两个是通…

CCAA质量管理【学习笔记】​​ 备考知识点笔记(七)质量相关法律法规及《管理体系审核员准则》2021修订3

5、质量管理体系基础考试大纲 3.3法律法规和其他要求 a)《中华人民共和国民法典》第三编 合同&#xff1b; b)《中华人民共和国消费者权益保护法》 c)《中华人民共和国产品质量法》 d) 中国认证认可协会相关人员注册与管理要求 目 录 前 言 第一章 总则 1.1 引言 1.2 适…

重学java 79.JDK新特性 ⑤ JDK8之后的新特性

别怕失败&#xff0c;大不了重头再来 —— 24.6.20 一、接口的私有方法 Java8版本接口增加了两类成员: 公共的默认方法 公共的静态方法 Java9版本接口又新增了一类成员: 私有的方法 为什么IDK1.9要允许接口定义私有方法呢? 因为我们说接口是规范&#xff0c;规范是…

由于找不到msvcp140.dll无法继续执行代码是什么意思,解决msvcp140.dll文件

由于找不到msvcp140.dll无法继续执行代码这种提示&#xff0c;你知道要怎么去处理么&#xff1f;出现这情况&#xff0c;你的程序就代表出现问题了&#xff0c;你会发现打不开&#xff0c;我们需要修复msvcp140.dll文件才能正常的使用程序。今天我们就来聊聊msvcp140.dll找不到…

加密好的WPSword文档,忘记密码怎么办?

在日常办公和学习中&#xff0c;我们经常使用WPS Word等文档处理软件来创建和编辑重要文件。为了保护这些文件不被未经授权的人访问&#xff0c;我们通常会选择给文档设置密码。然而&#xff0c;有时我们可能会因为时间久远或其他原因而忘记自己设置的密码&#xff0c;这时该如…

【Go】用 DBeaver、db browser 和 SqlCipher 读取 SqlCipher 数据库

本文档主要描述如何用 DBeaver、db browser 和 SqlCipher 上打开加密的 SQLite3 数据库(用 SqlCipher v3 加密) 软件版本 DBeaver&#xff1a;v24.1.0 SQLite-driver: sqlite-jdbc-3.46.0.0.jar dbbrowser-for-sqlite-cipher&#xff1a;3.12.2 SqlCipher cli(ubuntun)&am…

ubuntu18.04编译 BALM

紧接着上次编译完HBA&#xff0c;直接来编译BALM&#xff0c;发现基本上没有错误&#xff0c;但是在BARGE_test.cpp和PA_test.cpp中ParamSO3会出现错误: 错误改正主要参照&#xff1a; Ceres Manifolds/LocalParameterization 类_ceres::localparameterization-CSDN博客 错误的…

Java AES加密工具类

以下是一个简单的AES加密示例 import org.apache.commons.codec.binary.Base64;import javax.crypto.Cipher; import javax.crypto.spec.SecretKeySpec;/*** author Sakura* date 2023/8/16 14:54* Description 测试网站 http://tool.chacuo.net/cryptaes*/ public class AESU…

如何避免在React中的回调函数中使用箭头函数可能引起的内存泄漏?

在React中&#xff0c;箭头函数在回调函数中的使用确实可能引发性能问题&#xff0c;尤其是当这些函数在渲染方法或者组件内部被定义时。每次组件重新渲染时&#xff0c;都会创建这些函数的新实例&#xff0c;这可能导致不必要的计算和内存使用&#xff0c;甚至在某些情况下引发…

2024年了,上大学可以不需要用到电脑吗?

前言 在2024年的今天&#xff0c;电脑已经成为了人们工作生活的一大部分。Oh, no&#xff01;好像手机才是。 好像每个人都是这样的&#xff1a;可以没有电脑&#xff0c;但不能没有手机…… 所以2024年的今天&#xff0c;上大学的小伙伴们可以不需要用到电脑吗&#xff1f;…