|
@@ -214,6 +214,7 @@ class Payios extends Api
|
|
|
|
|
|
//苹果内购的验证收据
|
|
|
$receipt_data = input('apple_receipt', '', 'trim');
|
|
|
+ $password = input('password', '', 'trim');
|
|
|
if (!$receipt_data) {
|
|
|
$this->error('缺少参数');
|
|
|
}
|
|
@@ -221,7 +222,7 @@ class Payios extends Api
|
|
|
filePut('ios充值:参数apple_receipt['.$receipt_data.']');
|
|
|
|
|
|
// 验证支付状态
|
|
|
- $result = $this->validate_apple_pay($receipt_data);
|
|
|
+ $result = $this->validate_apple_pay($receipt_data,$password);
|
|
|
if (!$result['status']) {// 验证不通过
|
|
|
filePut('ios充值:验证'.$result['message']);
|
|
|
$this->error($result['message']);
|
|
@@ -431,7 +432,7 @@ class Payios extends Api
|
|
|
* @param string $receipt_data 付款后凭证
|
|
|
* @return array 验证是否成功
|
|
|
*/
|
|
|
- function validate_apple_pay($receipt_data = '') {
|
|
|
+ function validate_apple_pay($receipt_data = '',$password = '') {
|
|
|
// 验证参数
|
|
|
if (strlen($receipt_data) < 20) {
|
|
|
$result = array(
|
|
@@ -441,7 +442,7 @@ class Payios extends Api
|
|
|
return $result;
|
|
|
}
|
|
|
// 请求验证
|
|
|
- $html = $this->curl($receipt_data);
|
|
|
+ $html = $this->curl($receipt_data,$password);
|
|
|
$data = json_decode($html, true);
|
|
|
// p($data);die;
|
|
|
|
|
@@ -500,9 +501,14 @@ class Payios extends Api
|
|
|
* 21007 receipt是Sandbox receipt,但却发送至生产系统的验证服务
|
|
|
* 21008 receipt是生产receipt,但却发送至Sandbox环境的验证服务
|
|
|
*/
|
|
|
- function curl($receipt_data, $sandbox = 0) {
|
|
|
+ function curl($receipt_data, $password = '') {
|
|
|
//小票信息
|
|
|
$POSTFIELDS = array("receipt-data" => $receipt_data);
|
|
|
+
|
|
|
+ if(!empty($password)){
|
|
|
+ $POSTFIELDS['password'] = $password;
|
|
|
+ }
|
|
|
+
|
|
|
$POSTFIELDS = json_encode($POSTFIELDS, 320);
|
|
|
// $POSTFIELDS = '{' . '"receipt-data":' . '"' . $receipt_data . '"' .'}';
|
|
|
// p($POSTFIELDS);die;
|