Google Pay Java 后端验证方式二

访客 283 0

Google Pay的主要支付流程

1. 手机端通过与Java服务端的交互,发起支付请求并生成预订单,在完成后将生成的订单号返回给手机端。

2. 通过手机端向Google发起支付请求(包含本地服务器生成的订单号)。

3. Google服务器将支付结果发送回手机端(由于此处涉及消耗型产品,购买后必须通知Google Play我已完成本次交易)。

4. 手机端向Java服务端发送校验请求,一旦通过校验,即可顺利处理订单。服务端会进行重试校验,并在确认无误后进行发货操作,以确保订单能够成功正常发货。

配置

应用包名:packageName

Google Pay Java 后端验证方式二-第1张图片-谷歌商店上架

凭证:密码

Google Pay Java 后端验证方式二-第2张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第3张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第4张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第5张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第6张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第7张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第8张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第9张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第10张图片-谷歌商店上架

Google Pay Java 后端验证方式二-第11张图片-谷歌商店上架

Java服务端处理

为了成功调用Google API,必须满足一个前提条件:需要使用海外服务器。否则,可能会出现超时的情况。

Maven Dependencies:

```xml

  
    
      com.google.apis
      google-api-services-androidpublisher
      v3-rev20211125-1.32.1
    
  


校验代码:
``` 
@RestController
public class GoogleController {
    //packageName为应用程序包名、productId商品id、purchaseToken谷歌返回的收据
    @PostMapping(/)
    public ProductPurchase checkOrder(@RequestBody GooglePayDto googlePayDto, HttpServletRequest requestDto) throws IOException, GeneralSecurityException {
        //使用服务帐户Json文件获取Google凭据
        List scopes = new ArrayList();
        scopes.add(AndroidPublisherScopes.ANDROIDPUBLISHER);
        
        ResourceLoader resourceLoader = new DefaultResourceLoader();
        Resource resource = resourceLoader.getResource(classpath:static/刚下载的json文件,这里放到了static目录下);
        
        GoogleCredential credential = GoogleCredential.fromStream(resource.getInputStream())
                .createScoped(scopes);
                
       //使用谷歌凭据和收据从谷歌获取购买信息
       HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
       JacksonFactory jsonFactory = new JacksonFactory();
       
       AndroidPublisher publisher = new AndroidPublisher.Builder(httpTransport, jsonFactory, credential)
               .setApplicationName(应用程序名).build();
               
       AndroidPublisher.Purchases purchases = publisher.purchases();
       
       final AndroidPublisher.Purchases.Products.Get request = purchases.products().get(googlePayDto.getPackageName(), googlePayDto.getProductId(),googlePayDto.getPurchaseToken());
       
      Syst...
}
```

 

packageName: the name of the package

商品ID:产品编号

购买令牌:支付凭证

结果:

Google Pay Java 后端验证方式二-第12张图片-谷歌商店上架

标签: 谷歌商店上架 方式 谷歌凭据

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~