【发布时间】:2014-12-30 09:11:26
【问题描述】:
我的 googlw-wallet 数字商品回发文件失败。我知道我从谷歌得到了一个有效的回复,因为我输入了一条测试线来检查我是否收到了通过电子邮件将回复发送给我自己的回复。经测试,我得到了正确的 jwt 解码(使用在线 jwt 解码器上的 google),如下所示。当我将测试行移动到 JWT::decode 行下方时,我没有收到指示解码中出现致命错误的响应,该错误与 jwt 相同(由 luciferous 更改)。当我自己运行回发时,我收到了致命错误(当然没有发布 jwt),表明正在找到包含和脚本。
返回的回帖是 eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJHb29nbGUiLCJyZXF1ZXN0Ijp7Im5hbWUiOiJJbnZvaWNlIE51bWJlcjogMTA2NTk3IiwiZGVzY3JpcHRpb24iOiJTdXBwb3J0ZWQgU2VydmljZSIsInByaWNlIjoiMTAwIiwiY3VycmVuY3lDb2RlIjoiR0JQIiwic2VsbGVyRGF0YSI6IkRBVklEIE1JTExTLGRhdmVAZHdtaWxscy5jb20sSW52b2ljZSBOdW1iZXI6MTA2NTk3In0sInJlc3BvbnNlIjp7Im9yZGVySWQiOiJHV0RHX1MuY2VhYmI1YzQtNTk1Ni00OGIyLWE0MGItN2ZjMmRkMTg0YTlhIn0sInR5cCI6Imdvb2dsZS9wYXltZW50cy9pbmFwcC9pdGVtL3YxL3Bvc3RiYWNrL2J1eSIsImF1ZCI6IjEyMzQ1NjA1ODcxOTI0NjQ0MjcyIiwiaWF0IjoxNDE1MDI0ODM0LCJleHAiOjE0MTUwMjQ4NTR9.PV8c18EGWLL38sUDmjMY1HEV91An6ZVnKkymuW2SQUI。 P>
header
{
"alg": "HS256"
}
claims
{
"aud": "12345605871924644272",
"iss": "Google",
"request": {
"currencyCode": "GBP",
"price": "100",
"sellerData": "ghhk,ghty.com,Invoice Number:106597",
"name": "Invoice Number: 106597",
"description": "Supported Service"
},
"exp": 1415024854,
"iat": 1415024834,
"typ": "google/payments/inapp/item/v1/postback/buy",
"response": {
"orderId": "GWDG_S.ceabb5c4-5956-48b2-a40b-7fc2dd184a9a"
}
}
signature
PV8c18EGWLL38njyujMY1HEV91An6ZVnKkymuW2SQUI
我在尝试解码时遇到致命错误,因为之后我无法进入测试线。
我的回传脚本是
<?php
require_once '../../includes/lib/JWT.php';
require_once '../../includes/seller_info_test.php';
$encoded_jwt = $_POST['jwt'];
$decodedJWT = JWT::decode($encoded_jwt, $sellerSecret);
$orderId = $decodedJWT->response->orderId;
header("HTTP/1.0 200 OK");
echo $orderId;
$logfile = "purchasing/logfile.txt";
if (!file_exists($logfile)) {
touch($logfile);
chmod($logfile, 0777);
}
$orderIDS = file($logfile); //reads file into array
$orderIDS[] = $orderId; //append new orderID to array
file_put_contents($logfile, $orderIDS); //save the new array to file
?>
【问题讨论】:
标签: php postback android-pay jwt