当前位置: 首页 > news >正文

php网站开发实例教程代码阿里网站销量做不起来怎么办

php网站开发实例教程代码,阿里网站销量做不起来怎么办,不收费的网站有哪些,网站建设制度制定✨ 目录 🎈 申请商户号🎈 申请商户证书🎈 设置V3密钥🎈 开通H5支付🎈 设置支付域名🎈 SDK 下载🎈 第一次下载平台证书🎈非第一次下载平台证书🎈 H5下单 🎈 申…

✨ 目录

    • 🎈 申请商户号
    • 🎈 申请商户证书
    • 🎈 设置V3密钥
    • 🎈 开通H5支付
    • 🎈 设置支付域名
    • 🎈 SDK 下载
    • 🎈 第一次下载平台证书
    • 🎈非第一次下载平台证书
    • 🎈 H5下单

🎈 申请商户号

  • 申请地址:https://pay.weixin.qq.com/
  • 如果你还没有微信商户号,请点击上面的链接进行申请,如果已经有了,可以跳过这一步

🎈 申请商户证书

  • 首先点击 账户中心API安全申请API证书
  • 申请详细步骤请点击:https://kf.qq.com/faq/161222NneAJf161222U7fARv.html

申请证书页

🎈 设置V3密钥

  • 首先点击 账户中心API安全设置APIv3密钥设置
  • 输入任意的 32 位字符,该字符可由数字大小写字母组合,该密钥一定要记好给到开发人员

设置V3密钥
设置V3密钥

🎈 开通H5支付

  • 首先点击 产品中心我的产品H5支付点击开通

开通H5支付

🎈 设置支付域名

  • 首先点击 产品中心我的产品开发配置
  • 申请 H5 的师傅域名,需要准备域名 IPC 备案的截图网站支付服务商品界面的截图(需要截取到链接地址)
  • 申请大概需要2个工作日左右,尽量材料齐全,一次审核通过,如果驳回,审核的时间会越来越长
  • 域名一定要申请正确,如果到时候你支付不是在该域名下,会报商户参数错误的,也无法正常拉起微信支付

设置支付域名

🎈 SDK 下载

  • 微信官方提供了 JAVAPHPGO 三种语言版本的开发库,请根据自己开发语言选择
  • JAVA语言: wechatpay-java ‹推荐›、wechatpay-apache-httpclient
  • PHP语言: wechatpay-php ‹推荐›、wechatpay-guzzle-middleware
  • GO语言: wechatpay-go ‹推荐›
  • 这里我选择 php 作为讲解,使用 composer 安装 sdk
# 如果是空文件夹,先运行
composer init# 推荐使用 PHP 包管理工具 Composer 安装 SDK
composer require wechatpay/wechatpay

🎈 第一次下载平台证书

  • 上面命令执行完之后,会有一个 vendor/bin/CertificateDownloader.php 文件
  • 平台证书跟商户证书不是同一个东西,在后期请求中,平台证书和商户证书都要带上
  • 如果你是第一次申请平台证书,需要执行命令:php CertificateDownloader.php -k ${apiV3key} -m ${mchId} -f ${mchPrivateKeyFilePath} -s ${mchSerialNo} -o ${outputFilePath}
  • apiV3key: apiv3 秘钥,上面自己设置的32位数的密钥
  • mchId: 商户号,微信商户平台可以查询
  • mchPrivateKeyFilePath: 微信商户API私钥文件目录,也就是第二步申请商户证书里面生成的 apiclient_key.pem 路径
  • mchSerialNo: 证书序列号,在 账户中心API安全管理证书 中可以看见,如果有多个证书,找到自己正在使用的证书序列号
  • outputFilePath: 生成后的证书保存地址
# 命令
php CertificateDownloader.php -k ${apiV3key} -m ${mchId} -f ${mchPrivateKeyFilePath} -s ${mchSerialNo} -o ${outputFilePath}# 我的使用
cd vendor/bin/php CertificateDownloader.php -k 241xxxxxxxxxxxxxxxxx44 -m 1xxxxxxx1 -f ../../cert/merchant/apiclient_key.pem -s Wxxxxxxxxxxxxxxxx4 -o  ../../cert/wechatpay/

证书序列号

🎈非第一次下载平台证书

  • 如果你不是第一次下载平台证书,或者说你本地已经存在了平台证书,你想换一个的话
<?php
require_once('../vendor/autoload.php');use WeChatPay\Builder;
use WeChatPay\Crypto\Rsa;
use WeChatPay\Util\PemUtil;// 商户号
$merchantId = '1xxxxxx1';// 从本地文件中加载「商户API私钥」,「商户API私钥」会用来生成请求的签名
$merchantPrivateKeyFilePath = 'file://../cert/merchant/apiclient_key.pem';
$merchantPrivateKeyInstance = Rsa::from($merchantPrivateKeyFilePath, Rsa::KEY_TYPE_PRIVATE);// 「商户API证书」的「证书序列号」
$merchantCertificateSerial = '1xxxxxxxxxxxxxxxxxxxxx91';// 从本地文件中加载「微信支付平台证书」,用来验证微信支付应答的签名
$platformCertificateFilePath = 'file://../cert/wechatpay/wechatpay_4xxxxxxxxxxxxxxxxxxx9.pem';
$platformPublicKeyInstance = Rsa::from($platformCertificateFilePath, Rsa::KEY_TYPE_PUBLIC);// 从「微信支付平台证书」中获取「证书序列号」
$platformCertificateSerial = PemUtil::parseCertificateSerialNo($platformCertificateFilePath);// 构造一个 APIv3 客户端实例
$instance = Builder::factory(['mchid'      => $merchantId,'serial'     => $merchantCertificateSerial,'privateKey' => $merchantPrivateKeyInstance,'certs'      => [$platformCertificateSerial => $platformPublicKeyInstance,],
]);// 发送请求
$resp = $instance->chain('v3/certificates')->get(['debug' => true] // 调试模式,https://docs.guzzlephp.org/en/stable/request-options.html#debug
);
echo $resp->getBody(), PHP_EOL;

🎈 H5下单

  • 相信大家做微信 H5 支付,最关心的就是这个操作了
  • 主要是调用 v3/pay/transactions/h5 接口,如果上面配置都正确,就会返回一个 h5_url,然后前端拿到这个链接参数,跳转即可
  • 关于微信 H5 支付更多 API 可以查看:https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_3_1.shtml
<?php
require_once('../vendor/autoload.php');use WeChatPay\Builder;
use WeChatPay\Crypto\Rsa;
use WeChatPay\Util\PemUtil;// 商户号
$merchantId = '1xxxxxx1';// 从本地文件中加载「商户API私钥」,「商户API私钥」会用来生成请求的签名
$merchantPrivateKeyFilePath = 'file://../cert/merchant/apiclient_key.pem';
$merchantPrivateKeyInstance = Rsa::from($merchantPrivateKeyFilePath, Rsa::KEY_TYPE_PRIVATE);// 「商户API证书」的「证书序列号」
$merchantCertificateSerial = '1xxxxxxxxxxxxxxxxxxxxx91';// 从本地文件中加载「微信支付平台证书」,用来验证微信支付应答的签名
$platformCertificateFilePath = 'file://../cert/wechatpay/wechatpay_4xxxxxxxxxxxxxxxxxxx9.pem';
$platformPublicKeyInstance = Rsa::from($platformCertificateFilePath, Rsa::KEY_TYPE_PUBLIC);// 从「微信支付平台证书」中获取「证书序列号」
$platformCertificateSerial = PemUtil::parseCertificateSerialNo($platformCertificateFilePath);// 构造一个 APIv3 客户端实例
$instance = Builder::factory(['mchid'      => $merchantId,'serial'     => $merchantCertificateSerial,'privateKey' => $merchantPrivateKeyInstance,'certs'      => [$platformCertificateSerial => $platformPublicKeyInstance,],
]);try {$resp = $instance->chain('v3/pay/transactions/h5')->post(['json' => ['mchid'        => $merchantId,'out_trade_no' => 'tinygeeker0001','appid'        => '********换成自己的**********','description'  => 'Image形象店-深圳腾大-QQ公仔','notify_url'   => 'https://weixin.qq.com/','amount'       => ['total'    => 1,'currency' => 'CNY'],'scene_info' => ['payer_client_ip' => '127.0.0.1','h5_info' => ['type' => 'Wap']]]]);//    echo $resp->getStatusCode(), PHP_EOL;echo $resp->getBody(), PHP_EOL;
} catch (\Exception $e) {// 进行错误处理
//    echo $e->getMessage(), PHP_EOL;if ($e instanceof \GuzzleHttp\Exception\RequestException && $e->hasResponse()) {$r = $e->getResponse();
//        echo $r->getStatusCode() . ' ' . $r->getReasonPhrase(), PHP_EOL;echo $r->getBody(), PHP_EOL, PHP_EOL, PHP_EOL;}
//    echo $e->getTraceAsString(), PHP_EOL;
}
http://www.yayakq.cn/news/166899/

相关文章:

  • 网站建设刂搜金手指下拉二五房产网南京
  • 湖州网站建设官网wordpress获取动态页面
  • 做费网站成都公司注册地址
  • 保定专业网站建设公司百度推广效果怎样一天费用
  • 网站一天要发多少外链网站怎么创建
  • 17zwd一起做网店潮汕站网站开发最严重的问题
  • 网站建设论文1000字网址大全360
  • 无锡建设机械网站制作wordpress 安装路径
  • 做网站 sql 用哪种wordpress4 中文
  • 公众号制作模板网站注册会计师官网登录入口
  • 做网站用cms好吗做设计网上揽活哪个网站最好
  • 配送系统网站怎么做两个wordpress互通
  • 朔州做网站做淘客网站备案
  • 鬼佬做爰网站科技广告公司网站建设
  • asp网站伪静态规则网站建设单元格边距
  • 做网站 用什么空间微信公众号平台登陆
  • wordpress 3.8.1 漏洞win7优化大师好不好
  • 文件外链生成网站太原网站建设vhuashi
  • 杭州网站建设公司代理加盟wordpress微信朋友圈
  • 建好的网站能修改吗网络推广合作协议范本
  • 查域名注册详细信息查询网络优化是干什么的
  • 龙岩网站建设极速建站山东建设厅网站网址
  • 网站增值业务网站设计注意事项
  • 安宁网站建设熊掌网站开发项目比赛
  • wordpress文章相关推荐sem与seo的区别
  • 我想自己做一个网站领优惠券的网站怎么做
  • 网站接口怎么做源码网站制作教程
  • 汽车4s销售网站模板如何在后台做网站流程
  • 长沙专业的网站建设企业网站标题在哪里设置
  • 奢侈品网站建设方案小程序开发平台哪家比较被大家认可