小程序开发 APP开发 企业营销型网站 常见问题 技术分享 云服务 城市网点
首页技术分享PHP技术

禾匠商城小程序支付后无法正常修改订单状态的解决方案


近期给客户做一个小程序商城,使用的禾匠的系统,小程序出现支付后订单状态无法正常改变。这种情况遇到很多,多半是因为小程序强制使用https协议造成的,一般多数商城的网址会统一,所以微信支付的时候 调用统一下单接口的异步通知网址多数也会写成https的,这里是一个坑,微信支付和支付宝支付不支持https网址异步通知,所以这里是问题根本所在。

只要将统一下单接口的异步通知地址改为http的网址即可。

首先按照路径找到这个文件blob.png


异步通知的生成网址的函数在这个文件里:如下


if (!function_exists('pay_notify_url')) {

    /**

     * 拼接支付回调地址

     *

     * @param  string $suffix

     * @return string

     */

    function pay_notify_url($suffix)

    {

        $hostInfo = \Yii::$app->request->hostInfo;

        $protocol = env('PAY_NOTIFY_PROTOCOL', false);

        if ($protocol === 'http') {

            $hostInfo = str_replace('https:', 'http:', $hostInfo);

        }

        if ($protocol === 'https') {

            $hostInfo = str_replace('http:', 'https:', $hostInfo);

        }

        $hostInfo .= \Yii::$app->request->baseUrl . $suffix;

        return $hostInfo;

    }

}


我们只需要改造一下这个函数就行了


if (!function_exists('pay_notify_url')) {

    /**

     * 拼接支付回调地址

     *

     * @param  string $suffix

     * @return string

     */

    function pay_notify_url($suffix)

    {

        $hostInfo = \Yii::$app->request->hostInfo;

        $protocol = env('PAY_NOTIFY_PROTOCOL', false);

        if ($protocol === 'http') {

            $hostInfo = str_replace('https:', 'http:', $hostInfo);

        }

        if ($protocol === 'https') {

            $hostInfo = str_replace('http:', 'https:', $hostInfo);

        }

$hostInfo = str_replace('https:', 'http:', $hostInfo);//这里加这行代码即可强制转为http的网址

        $hostInfo .= \Yii::$app->request->baseUrl . $suffix;

        return $hostInfo;

    }

}


其实你仔细看这个函数的话,会发现这句 $protocol = env('PAY_NOTIFY_PROTOCOL', false); 其实这个应该是在某个位置有设置这个判断条件,也就是,应该就在禾匠系统的某个位置有设置http或者https拼接异步地址的地方,可惜我没找到,于是直接改代码了!

联系我们


在线 Q Q:我是客服,点击这里给我发消息

在线旺旺:点击这里给我发消息

联系手机:13400146449

联系手机:17161107311

服务邮箱: titrol@titrol.com

办公地址:河北省邢台市宁晋县凤凰城北1102

我们的服务


小程序开发定制

小程序开发定制

为客户提供企业官网小程序开发、社区团购、分销商城、商家预约、同城信息、房产中介、求职招聘、在线客服等小程序开发,支持百度、微信、抖音、头条、支付宝五大平台开发!
企业网站建设+小程序

企业网站建设+小程序

为客户建设企业网站并对接6大平台小程序,一个后台更新内容,PC+手机端+6大平台小程序同步更新,方便数据管理,并全方位利用各大平台流量,为企业做全维度的展示。
企业大数据分析

企业大数据分析

为企业量身分析互联网数据,为用户分析自身行业特征,通过互联网大数据分析为用户找到潜在的客户群,帮助客户提供营销数据向导!
APP开发

APP开发

为客户开发商城APP、企业管理APP、淘客APP、多多客APP、社交APP、直播APP、短视频APP、地图应用、新闻资讯、生鲜配送、OA/CRM/ERP系统定制等