1. 程式人生 > >支付寶APP支付 顯示 系統繁忙 請稍後再試 ALI40247

支付寶APP支付 顯示 系統繁忙 請稍後再試 ALI40247

PHP服務端生成地址傳給IOS端呼叫 一直顯示系統繁忙 請稍後再試 ALI40247   金鑰也正常 也按照官方說明來走。

官方的PHP端SDK是錯誤的  根本不加密biz_content 欄位  

隨後百度找不到相關的資料 只有人說換成 1.0版本 也就是 移動支付 

移動支付相關文件 https://doc.open.alipay.com/doc2/detail?treeId=59&articleId=103563&docType=1

使用移動支付的介面 

把所有陣列值以key= “value”進行組合,之後用“&”字元連線起來,支援無序,如:

1 service=
"mobile.securitypay.pay"&partner="2088101568338364"&_input_charset="utf-8"&notify_url=&out_trade_no="0819145412-6177"&subject="測試"&payment_type="1"&seller_id="[email protected]"&total_fee="0.01"
注意 所有的value是有雙引號的!!  加密前也要有雙引號

官方的老介面SDK也是錯的 我們來看看官方的老介面SDK是怎麼寫的

/**
 * 把陣列所有元素,按照“引數=引數值”的模式用“&”字元拼接成字串
 * @param $para 需要拼接的陣列
 * return 拼接完成以後的字串
 */
function createLinkstring($para) {
	$arg  = "";
	while (list ($key, $val) = each ($para)) {
		$arg.=$key."=".$val."&";
	}
	//去掉最後一個&字元
	$arg = substr($arg,0,count($arg)-2);
	
	//如果存在轉義字元,那麼去掉轉義
	if(get_magic_quotes_gpc()){$arg = stripslashes($arg);}
	
	return $arg;
}

注意 
$arg.=$key."=".$val."&";

這一行 他並沒有把 value加上雙引號    應該要自己手動改成

<span style="background-color: rgb(255, 0, 0);">$arg.=$key."=".'"'.$val.'"'."&";</span>

支付寶的工程師 我也是呵呵呵呵呵