calibr / ms-receipt-validator

该软件包最新版本(1.2.1)没有可用的许可信息。

微软商店收据验证器

1.2.1 2016-12-20 13:46 UTC

This package is not auto-updated.

Last update: 2024-09-14 20:04:09 UTC


README

此库旨在简化服务器端验证微软商店购买收据的过程。

安装

composer require calibr/ms-receipt-validator

使用方法

假设客户端将收据发送到服务器端,并且我们通过变量 $_POST["receiptXML"] 接收它,收据的验证将如下所示

<?php

use Calibr\MSReceiptValidator\Validator;

$validator = new Validator();
// validation(omit exception handling)
$receipt = $validator->load($_POST["receiptXML"]);

// if we are here receipt has been successfully validated and we have all receipt data in the $receipt variable

Validator#load 方法

通过在 Validator 类实例上调用 load 方法执行验证。此方法仅接受一个参数 - 收据 XML 字符串,并返回 收据

Validator#setPublicKey 方法

如果您想直接设置公钥,则需要将公钥字符串传递给此方法。

收据对象格式

产品收据对象格式

应用收据对象格式

错误处理

Validator#load 方法在发生错误时抛出异常。可能的异常包括

  • Calibr\MSReceiptValidator\FailFetchPublicKeyException - 微软服务器未响应或响应错误,请参阅异常消息中的详细信息
  • Calibr\MSReceiptValidator\MalformedReceiptException - 收据无效,请参阅异常消息中的详细信息
  • Calibr\MSReceiptValidator\ValidationFailedException - 收据未通过签名验证过程