【问题标题】:Verify In-App Purchase from Google Play on Backend Node.js在后端 Node.js 上验证来自 Google Play 的应用内购买
【发布时间】:2015-04-15 07:21:13
【问题描述】:

我正在开发一款具有某种应用内购买功能的移动应用。

现在在后端/服务器端,我想验证来自 google 的购买信息。节点中几乎没有用于验证的模块,但它们只是验证数据是否正确,但没有联系谷歌。 任何人都可以给出任何相同的建议.. 应用内购买数据就像即

{
   "orderId":"12999763169054705758.1364365967744519",
   "packageName":"my package name",
   "productId":"77",
   "purchaseTime":1366217534000,
   "purchaseState":0,
   "purchaseToken":"utfwimslnrrwvglktizikdcd.AOJ1OwZ4l5oXz_3d2SAWAAUgFE3QErKoyIX8WuSEnBW26ntsyDmlLgoUd5lshqIY2p2LnlV4tpH4NITB4mJMX98sCtZizH7wGf6Izw3tfW_GflJDKFyb-g"
}

【问题讨论】:

    标签: node.js in-app-purchase google-play-services


    【解决方案1】:

    您是否尝试过iab_verifier 相同的模块

    在此 Google Play 中需要公钥来验证应用计费

    var IABVerifier = require('iab_verifier'),
    
    var googleplay_public_key = "-- YOUR PUBLIC KEY --";
    var googleplayVerifier = new IABVerifier(googleplay_public_key);
    
    var receiptData = receiptDataFromClient;
    var receiptSignature = signatureDataFromClient;
    
    var isValid = googleplayVerifier.verifyReceipt(receiptData,receiptSignature);
    
    if (result) {
        // Receipt is valid. Grab a beer celebrate!
    } else {
        // Receipt is NOT valid... 
    } 
    

    谢谢

    【讨论】:

    • 它只是进行密钥验证和数据验证.. 谷歌端没有验证..... IABVerifier.prototype.verifyReceipt = function(signedData, signature) { var verifier;验证器 = crypto.createVerify(算法);验证者.更新(签名数据); return verifier.verify(this.publicKeyString, signature, 'base64'); };返回 IABVerifier; }
    • signatureDataFromClient 代表什么
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-25
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    相关资源
    最近更新 更多