题
我们正试图将谷歌钱包与数字商品集成在一起或2天前,11月15日我们设法努力工作。但是,当第二天再次检查第二天甚至今天,虽然代码仍然相同,但我们没有改变它的字母,它仍然没有工作,给我们这个错误:
哦哦。有问题。
由于技术问题,我们无法完成您的购买。
问题的详细信息:不幸的是,我们无法使用商家的服务器确认您的购买。您的订单已被取消。如果持续这个问题,请联系商家。
我们使用的代码是这样的:
$response = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : file_get_contents("php://input");
$response = substr_replace($response, "", 0, 4); //remove "
$response = JWT::decode($response, $sellerSecretKey);
header("HTTP/1.1 200 OK");
.
和我说它两天前的工作正常,我现在也有它的觉得现在也在工作,因为在我们的日志文件中,我们会打印此响应
stdclass对象 ( [ISS]=> Google [请求]=> stdclass对象 ( [名称]=>产品1。 [描述]=>您可以从我们的商店购买1个产品。谢谢你。 [价格]=> 9.99 [CurrencyCode]=> USD [谢斯达达特]=>客户名称,电子邮件地址 )
[response] => stdClass Object
(
[orderId] => GWDG_S.c7a66f5b-4674-43f0-be16-2b72f69a7445
)
[typ] => google/payments/inapp/item/v1/postback/buy
[aud] => 03083876603093172875
[iat] => 1384689627
[exp] => 1384689647
.
)
正确指定了回波URL,我们正在使用沙箱进行测试。
这是谷歌的问题吗?他们是否正在研究软件或某事,这就是导致问题的原因?或者我们在这里做错了吗?。
任何帮助将多得多。谢谢。
解决方案
意味着评论,但它不会适合...
将错误点指向您的回波处理程序。我刚试过沙箱,事物看起来很好。
我 not 一个php dev,所以这可能是不准确的 - 你是否响应了hostacicetagcode?同样,这仅基于我的读取上面的代码(我认为我只看到http 200?)
我可以想到的唯一其他事情是你要回应的滞后是超过10秒(?) - 哪个 * 攻击通过文本:您将数据获取到日志,因为谷歌将向您发送数据,这是您是否正常响应,这是最重要的
一旦您使用卖家秘密解码JWT,您可以确保蛋糕购买是可以的并记录它。 在10秒内接收回发,您的服务器必须发送200个确定响应,其中唯一的内容是“OrderID”字段的值。如果没有,Google取消了交易。
hth。