关于易宝支付的回调和跨域请求

此次开发是基于小京东商城的开发(ecshop)
1.在支付的SDK里面有个call_back文件,支付的文档里面有个notify参数,里面的地址就写成能访问到call_back.php文件就行,切记,一定要是能访问到此地址
2.易宝支付的服务器会发送一个response参数还有另外一个参数,忽略,response参数里面有所有的订单信息附上代码


    <?php
define('IN_ECS', true);
include (dirname(__FILE__)."/includes/modules/payment/conf.php");
require_once (dirname(__FILE__)."/includes/modules/payment/yibao/YopClient.php");
require_once (dirname(__FILE__)."/includes/modules/payment/yibao/YopClient3.php");
require_once (dirname(__FILE__)."/includes/modules/payment/yibao/Util/YopSignUtils.php");
require (dirname(__FILE__) . '/includes/init.php');
//结果通知返回原文数据
function callback($source){
 
       global $merchantno;
   global $private_key;
   global $yop_public_key;
    //返回的密文
    //还原出原文
    return YopSignUtils::decrypt($source,$private_key, $yop_public_key);


}
//$aa = '{"unionID":null,"bankTrxId":"18042210246307468","orderId":"2018041915771","openID":null,"paySuccessDate":"2018-04-22 10:15:52","platformType":"NCPAY","bankPaySuccessDate":"2018-04-22 10:15:52","customerFee":"0.00","uniqueOrderNo":"1001201804220000000102775930","fundProcessType":"REAL_TIME","payAmount":"0.01","orderAmount":"0.01","requestDate":"2018-04-22 10:13:59","parentMerchantNo":"10018335019","paymentProduct":"NCPAY","status":"SUCCESS","merchantNo":"10020290087"}';
//$a = json_decode($aa,true);
//$key='oiwersoiasfqwe762323';
//$sign = MD5($a['orderId'].$a['orderAmount'].$key);




//$url = "http://域名/api/notify/NotifyShopPay".'?orderId='.$a['orderId'].'&uniqueOrderNo='.$a['uniqueOrderNo'].'&status='.$a['status'].'&orderAmount='.$a['orderAmount'].'&payAmount='.$a['payAmount'].'&sign='.$sign;
//var_dump($url);exit;
//$code = "code={"unionID":null,"bankTrxId":"18042210246307468","orderId":"2018042286301","openID":null,"paySuccessDate":"2018-04-22 10:15:52","platformType":"NCPAY","bankPaySuccessDate":"2018-04-22 10:15:52","customerFee":"0.00","uniqueOrderNo":"1001201804220000000102775930","fundProcessType":"REAL_TIME","payAmount":"0.01","orderAmount":"0.01","requestDate":"2018-04-22 10:13:59","parentMerchantNo":"10018335019","paymentProduct":"NCPAY","status":"SUCCESS","merchantNo":"10020290087"}";
$data = $_REQUEST["response"];
$call_pay = callback($data);
$a = json_decode($call_pay,true);
$key='oiwersoiasfqwe762323';
$sign = MD5($a['orderId'].$a['orderAmount'].$key);
$url = "http://域名/api/notify/NotifyShopPay".'?orderId='.$a['orderId'].'&uniqueOrderNo='.$a['uniqueOrderNo'].'&status='.$a['status'].'&orderAmount='.$a['orderAmount'].'&payAmount='.$a['payAmount'].'&sign='.$sign;


//初始化


      $curl = curl_init();
     
     //设置抓取的url
      curl_setopt($curl, CURLOPT_URL, $url);


     //设置头文件的信息作为数据流输出
      curl_setopt($curl, CURLOPT_HEADER, 1);
      //设置获取的信息以文件流的形式返回,而不是直接输出。
      curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
      //执行命令
     // curl_setopt($curlp, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
      $data = curl_exec($curl);
      // var_dump( curl_error($curl));exit;
     //关闭URL请求
     curl_close($curl);
     //显示获得的数据
     var_dump($data);




file_put_contents("pay_log.txt",$url);


echo "SUCCESS"; 
中间的curl操作是将其返回的地址和参数拼接成url对另外一个平台进行请求。(curl进行跨域的请求操作函数)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值