PHP后端代码生成微信小程序带参数的二维码保存成jpg图片上传到服务器getwxacodeunlimit
老板最近有点飘了,他要在PC端的网站放一个微信小程序的二维码,并且扫描这个二维码以后要跳到小程序对应的房源详情页。
这是微信官方给出的文档,连接地址:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/qr-code.html
方法一:生成小程序带参二维码
【方形码】如图:官方给出的文档说的很简单,页没有个demo.可能是给大佬看的,像我这种一般的程序员看起来还是有点困难。

【系统环境】
小姐姐这边的系统环境是Linux系统,nginx的服务器,thinkPHP5.6的框架。
实现代码如下:
根据微信官方的步骤;
第一步:要先获取调用API接口的accesstoken;
public function getAccessToken(){
$appid = '公司的小程序appid';
$secret = '公司的小程序sercret';
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$appid."&secret=".$secret;
$res = json_decode($this->httpGet($url));
$access_token = @$res->access_token;
return $access_token;
}
第二步:请求微信获取二维码的接口:
官方文档如图:

小姐姐代码:
public function getXcxCode(){
//获取access token
$ACCESS_TOKEN = $this->getAccessToken();
//创建二维码
$qcode ="https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=".$ACCESS_TOKEN;
$param = json_encode(array("path"=>"pages/detail/detail?id=5084","width"=> 150));
$result = $this->httpRequest( $qcode, $param,"POST");
$path = 'uploads/qrcode/h.jpg';
file_put_contents($path, $result);
$return['status_code'] = 2000;
$return['msg'] = 'ok';
$return['img'] = 'https://公司域名.com/' . $path;
echo '<img src="'.$return['img'].'" />';exit;
echo json_encode($return);exit;
$base64_image ="data:image/jpeg;base64,".base64_encode( $result );
return '<image src='.$base64_image.'></image>';
}
有个问题是,官方给的返回的二维码是一个base64的图片,但是这种图片在保存的时候很不方便,就需要我们把base64的图片转化成png.或者jpg格式的图片进行保存。
本以为这样子就可以大功告成,下班去约会了,窃喜中,
没想到
PHP后端代码生成微信小程序带参数的二维码保存成jpg图片上传到服务器getwxacodeunlimit的更多相关文章
- 微信小程序带参数生成二维码
wx.request({ url: 'https://api.weixin.qq.com/cgi-bin/token', header: { 'content-type': 'application/ ...
- 微信小程序条码、二维码生成模块
代码地址如下:http://www.demodashi.com/demo/13994.html 一.前期准备工作 软件环境:微信开发者工具 官方下载地址:https://mp.weixin.qq.co ...
- 微信小程序,获取二维码
微信小程序,获取二维码 找到一篇很实用的博客,他已经写得很详细了,自己也懒得写,亲测有效 参考网址
- 微信小程序生成带参二维码
需求:生成小程序中的海报,需要小程序二维码可以使用户保存到本地在朋友圈分享 生成二维码工具类代码如下: package com.aone.foottalk.action.wx.util; import ...
- 微信小程序之生成二维码
最近项目中涉及到小程序的生成二维码,很是头疼,经过多次摸索,整理出了自己的一些思想方法,如有不足,欢迎指正. 首先完全按照小程序的结构依次填坑. pages--index.wxml <view ...
- 微信小程序 - 配置普通二维码跳小程序
普通二维码跳小程序规则: https://developers.weixin.qq.com/miniprogram/introduction/qrcode.html#%E5%8A%9F%E8%83%B ...
- 微信小程序扫描普通二维码打开小程序的方法
很久没有写博客了,之前换了一份工作,很久没有做Android开发了,现在转做前端开发了,记录一下遇到的问题及解决的方法. 最近做微信小程序开发,遇到一个需求,后台管理系统生成的问卷和投票会有一个二维码 ...
- 转【微信小程序 四】二维码生成/扫描二维码
原文:https://blog.csdn.net/xbw12138/article/details/75213274 前端 二维码生成 二维码要求:每分钟刷新一次,模拟了个鸡肋,添加了个按分钟显示的时 ...
- 微信小程序获取普通二维码
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
随机推荐
- (JavaScript) base64 字符串 和 ArrayBuffer 之间转换
base64 --> ArrayBuffer function base64ToUint8Array(base64String) { const padding = '='.repeat((4 ...
- Web for pentester_writeup之Code injection篇
Web for pentester_writeup之Code injection篇 Code injection(代码注入) Example 1 <1> name=hacker' 添加一个 ...
- super()函数的作用
1.super()调用父类方法,并重写>>>>>>减少代码量(Square类实现) 2.它允许您在子类中调用超类的方法. 这种情况的主要用例是扩展继承方法的功能. ...
- [考试反思]0811NOIP模拟测试17:虚无
(sdfz未参加,也就是一共就51个人) 也不粘具体排名了,只写分数线. []220 []201 []194 [5]181 [10]141 [15]132 [20]122 [25]116 [30]10 ...
- python学习之【第十五篇】:Python中的常用模块之time模块
1.前言 在Python中,对时间的表示或操作通常要使用到time模块.本篇博文就来记录一下time模块中常用的几种时间表示转换方法. 2. 三种时间表示形式 2.1 时间戳 从1970年1月1日零点 ...
- js设置Date
function getDate (yyyy, MM, dd) { let t = new Date() t.setFullYear(yyyy) t.setMonth(Number(MM) - 1) ...
- html5基本页面
html5基本页面 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- acm经验(转)
先简单介绍一下自己: 高中在OI打过一段时间酱油,大一后暑假进入ACM集训队,到大三寒假,总共一年半的ACM生涯. 总共参加了四场比赛:区域赛一银(2013长春)一铜(2013杭州)一铁(2012金华 ...
- docker项目——搭建飞机大战小游戏
项目2:搭建打飞机小游戏,验证数据持久化(最底下有链接) 第一步:拉取镜像 [root@localhost docker-image]# docker load < httpd_img.tar. ...
- ajax传出数组到后台
var vote = new Array(); $("input[name='option_name']").each(function(i){ if($(th ...