本文主要讲移动APP实现苹果支付的服务端实现步骤。
苹果应用内支付的流程可参考:
2、中文博客:https://mengkang.net/723.html
简要说明如下:
1、首先客户端先请求苹果支付中心,支付中心返回给客户端一堆加密的数据。
2、然后客户端把这段加密的数据传给服务端。
3、最后由服务端端再去请求苹果支付中心来验证这次购买是否成功。如果验证通过,服务器端对业务逻辑进行处理。
本例实现方式:
客户端和服务端之间采用的websocket + JSON格式数据的通信方式。
服务端业务逻辑部分采用是Perl语言编写。
1、接口参数
{
"order_id":订单号(前端生成,32个字符内,保证唯一性)
"receipt_data":"MIITuwYJKoZIhvcNAQcCoIITrDCCE6g..."支付中心返回给客户端的加密数据
}
2、服务端请求支付中心验证票据
sub apple_check_receipt {
my $receipt_data = $_[0];
my $endpoint_debug = "https://sandbox.itunes.apple.com/verifyReceipt"; #开发环境,采用苹果沙盒地址
if(__PACKAGE__ eq "PRODUCT") {
$endpoint_debug = "https://buy.itunes.apple.com/verifyReceipt"; #生产环境
}
# 构造请求的参数(json格式)