我正在尝试使用我的 flex 应用程序让亚马逊支付工作,如下所示:http: //miti.pricope.com/2009/07/11/using-amazon-flexible-payment-system-with-flex/
我完全按照他说的做了,我已经下载了文件并更改了访问密钥和密钥。当我在本地主机或生产服务器上运行它时,我得到“签名不匹配”
我还需要什么才能让它工作?还有什么我需要他忘记包括的东西吗?
我正在尝试使用我的 flex 应用程序让亚马逊支付工作,如下所示:http: //miti.pricope.com/2009/07/11/using-amazon-flexible-payment-system-with-flex/
我完全按照他说的做了,我已经下载了文件并更改了访问密钥和密钥。当我在本地主机或生产服务器上运行它时,我得到“签名不匹配”
我还需要什么才能让它工作?还有什么我需要他忘记包括的东西吗?
接下来让我们试试:
goto return.and 找到function validateQueryString()
并更改为:
function validateQueryString()
{
echo "validing the query string now\n";
$querystring = $_SERVER['QUERY_STRING'];
echo $querystring."\n";
echo $_GET['signature'];
$obj = new Amazon_FPS_CBUIUtils(AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY);
//Original signature received in response from Amazon FPS should be specified.
$signatureMatched = $obj->validateQueryString($querystring,$_GET['signature']);
if ($signatureMatched) {
echo "signature matched \n";
$request = new Amazon_FPS_Model_PayRequest();
//set the proper senderToken here.
$request->setSenderTokenId($_GET['tokenID']);
$amount = new Amazon_FPS_Model_Amount();
$amount->setCurrencyCode("USD");
//set the transaction amount here;
$amount->setValue($_SESSION['transaction_amount']);
$request->setTransactionAmount($amount);
//set the unique caller reference here.
$request->setCallerReference($_GET['callerReference']);
$service = new Amazon_FPS_Client(AWS_ACCESS_KEY_ID,
AWS_SECRET_ACCESS_KEY);
invokePay($service, $request);
}
else
echo "Signature did not match \n";
}
并在此处发布输出,包括您的Signature did not match
谢谢。