开发者控制台

适用于网页应用的IAP API

适用于网页应用的IAP API

您可以为网页应用程序添加应用内购买(IAP)功能。Amazon Services库为您的应用提供了简单API,并管理与原生IAP API的交互。

API概览

面向网页应用的应用内购买包含三个主要元素:

  • Amazon Services库 - JavaScript类,用于管理您的网页应用与亚马逊原生IAP API之间的交互。
  • 购买处理程序 - 您在网页应用中提供、用于响应来自Amazon Services库的回调方法。
  • Receipt Verification Service - 一项可用于验证客户购买收据的亚马逊服务。

要集成您的应用与应用内购买API,请执行以下任务:

  • 在Amazon Services库注册购买处理程序。
  • 在应用中适当的位置调用IAP API方法。
  • 响应回调方法。

回调可能由应用触发,也可能异步调用,因此应用必须能够处理这两种情况。请将应用构造为无状态,并能够不依赖任何一种执行状态。例如,应用的上一个会话可能已发出购买请求,但因应用关闭而没传送。当应用重新启动并注册购买处理程序时,队列中的购买将传递到新会话。

API流程

以下列表详细列出了使用Amazon Services库的网页应用的流程。列表项编号与列表后面图中的标注对应:

  1. 实现购买处理程序方法。
  2. 在Amazon Services库中注册您的购买处理程序。
  3. 应用启动应用内购买。
  4. 购买处理程序方法处理响应通知。

    以上是所需的最少步骤。我们建议您在实际实现过程中执行以下附加步骤:

  5. 您的应用保留收据。
  6. 应用将收据发送给应用服务器。
  7. 应用服务器将收据发送到Amazon RVS进行验证,并接收响应。
  8. 应用服务器将响应发送给应用。
  9. 应用保留结果。

Amazon Services库

Amazon Services库是应用内购买API不可或缺的部分。通过应用内购买API发起购买后,库将显示含有亚马逊品牌的用户界面来完成交易。

要在应用中包含这个JS库,请在网页应用的主HTML文件中添加以下<script>标签:

<script src="https://resources.amazonwebapps.com/v1/latest/Amazon-Web-App-API.min.js">
</script>

使用亚马逊应用内购买API的代码需要等待amazonPlatformReady事件发生,该事件由亚马逊HTML5框架生成。

document.addEventListener('amazonPlatformReady', function () {
    if(amzn_wa.IAP) {
        //此处放置API用法代码
    }
});

如果应用在用户身份未经亚马逊验证的情况下调用IAP API,Amazon Services库将验证用户身份。为确保良好用户体验并确认用户已登录到亚马逊服务,请在应用启动后立即检查权利。

该库及亚马逊的各项服务会显示购买流程所有方面的用户界面。它们提供可购买商品的显示逻辑,执行一键式购买,并处理出现的任何前提条件或错误情景。

如果购买失败,客户端会向客户显示消息;而您的应用不应向客户显示消息。例如,如果客户的资料中没有有效信用卡,库会将客户重定向到某个页面,他们可以在该页面更新付款信息。您无需向客户提供有关购买流程的确认或其他插屏对话框。