php 단일 이체 알 리 페 이 기능 실현
1.먼저 개미 금 복 계약 서 를 알 리 페 이 로 이체
정부측
2.필요 한 설정 정보
1).appid 적용
2).키 생 성
api 문서
문서 절차 에 따라 생 성
이 곳 의 응용 키 업로드
3.공식 sdk 를 다운로드 하여 자신의 프로젝트 에 통합
문서 주소
공식 실례
//
AlipayClient alipayClient = new DefaultAlipayClient("https://openapi.alipay.com/gateway.do", APP_ID, APP_PRIVATE_KEY, "json", CHARSET, ALIPAY_PUBLIC_KEY, "RSA2");
// API request , , :alipay.open.public.template.message.industry.modify
AlipayOpenPublicTemplateMessageIndustryModifyRequest request = new AlipayOpenPublicTemplateMessageIndustryModifyRequest();
//SDK ,
// , ,
request.setBizContent(" {" +
" \"primary_industry_name\":\"IT /IT \"," +
" \"primary_industry_code\":\"10001/20102\"," +
" \"secondary_industry_code\":\"10001/20102\"," +
" \"secondary_industry_name\":\"IT /IT \"" +
" }");
AlipayOpenPublicTemplateMessageIndustryModifyResponse response = alipayClient.execute(request);
// ,
if(response.isSuccess()){
//.....
}
효 과 는 다음 과 같다.내 코드
<?php
/**
* create by
* create time 2018/4/8
*/
namespace Org\Util;
class AlipayTransfer{
private $appId = 'appid';
private $rsaPrivateKey = ' ';
private $alipayrsaPublicKey = " ";
private $payer_name = "xx ";
private $aop;
public function __construct()
{
$g_alipay = C('ALIPAY_CONFIG');
$this->appId = $g_alipay['APPID'];//appid
$this->rsaPrivateKey = $g_alipay['rsaPrivateKey']; //
$this->alipayrsaPublicKey=$g_alipay['rsaPublicKey'];//
// sdk
Vendor('Alipayaop.AopSdk');
}
public function init_aop_config()
{
$this->aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
$this->aop->appId = $this->appId;
$this->aop->rsaPrivateKey = $this->rsaPrivateKey;
$this->aop->alipayrsaPublicKey=$this->alipayrsaPublicKey;
$this->aop->apiVersion = '1.0';
$this->aop->signType = 'RSA2';
$this->aop->postCharset='UTF-8';
$this->aop->format='json';
}
/**
*
* @param $order_number
* @param $pay_no
* @param $pay_name
* @param $amount
* @param $memo
*/
public function transfer($order_number,$pay_no,$pay_name,$amount,$memo)
{
//
$this->transferLog($order_number,$pay_no,$pay_name,$amount);
$this->aop = new \AopClient ();
//
$this->init_aop_config();
//
$request = new \AlipayFundTransToaccountTransferRequest ();
$request->setBizContent("{" .
"\"out_biz_no\":\"".$order_number."\"," .//
"\"payee_type\":\"ALIPAY_LOGONID\"," .//
"\"payee_account\":\"".$pay_no."\"," .//
"\"amount\":\"".$amount."\"," .//
"\"payer_show_name\":\"".$this->payer_name."\"," .//
"\"payee_real_name\":\"".$pay_name."\"," .//
"\"remark\":\"".$memo."\"" .//
"}");
$result = $this->aop->execute ( $request);
$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
$resultCode = $result->$responseNode->code;
$resultSubMsg = $result->$responseNode->sub_msg;
//
$this->edit_transferLog($order_number,$resultCode,$resultSubMsg);
if(!empty($resultCode)&&$resultCode == 10000){
return true;
} else {
return false;
}
}
/**
*
*/
private function transferLog($order_number,$pay_no,$pay_name,$amount)
{
$data['order_number'] = $order_number;
$data['pay_no'] = $pay_no;
$data['pay_name'] = $pay_name;
$data['amount'] = $amount;
$data['create_time'] = time();
M('AlipayTransferLog')->add($data);
}
/**
*
*/
private function edit_transferLog($order_number,$result_code,$sub_msg)
{
$model = D("AlipayTransferLog");
$where['order_number'] = $order_number;
$result = $model->where($where)->order('create_time desc')->find();
if ($result_code == 10000)
{
$result['status'] = 1;
$sub_msg = 'success';
}
else
{
$result['status'] = 2;
}
$result['memo'] = $sub_msg;
$result['update_time'] = time();
M('AlipayTransferLog')->save($result);
}
/**
*
*/
public function query($order_number)
{
$this->aop = new \AopClient ();
//
$this->init_aop_config();
$request = new \AlipayFundTransOrderQueryRequest ();
$request->setBizContent("{" .
"\"out_biz_no\":\"".$order_number."\"" .
" }");
$result = $this->aop->execute ( $request);
$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
$resultCode = $result->$responseNode->code;
if(!empty($resultCode)&&$resultCode == 10000){
$res_arr['code'] = '00';
$res_arr['data'] = $result;
} else {
$res_arr['code'] = '-1';
}
return $res_arr;
}
}
?>
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Laravel - 변환된 유효성 검사 규칙으로 API 요청 제공동적 콘텐츠를 위해 API를 통해 Laravel CMS에 연결하는 모바일 앱(또는 웹사이트) 구축을 고려하십시오. 이제 앱은 CMS에서 번역된 콘텐츠를 받을 것으로 예상되는 다국어 앱이 될 수 있습니다. 일반적으로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.