微信小程序的坑简直比我的头发还多,今天下午获取微信二维码,遇到的44002,41001,还有图片没法正常显示以及小程序参数获取的问题,接下来一一解决

首先获取微信token然后再获取二维码这个没什么好说的 直接上代码

public function getQRcode()
{
$appid = '';
$secret = '';
$access_token = json_decode(file_get_contents('https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$appid.'&secret='.$secret),true)['access_token'];
$url = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=$access_token";
$ch = curl_init();
$data = json_encode(['scene' => '&id='.$this->user_id]);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 'image/gif');
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($data)
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); //如果需要将结果直接返回到变量里,那加上这句。
$res = curl_exec($ch);
}   虽然已经获取到了小程序二维码 但是此时打印$res就会出现乱码的问题 仔细看文档的同学可能就知道 这是因为微信会返回图片二进制内容

  

  妈的 简直不要太坑啊

  

$data = 'data:image/jpeg;base64,'.base64_encode($res);//补全base64加密字符串头
$html = "<!DOCTYPE html>
<html lang='en'>
<head>
<meta charset='UTF-8'>
<title>二维码</title>
</head>
<body>
<img src='$data'>
</body>
</html>";
echo $html;
exit; 在代码上加上这一句 可以转换 直接输出图片 ok 二维码已经出来了 接下来就是获取二维码参数 比如参数为id=1 获取二维码参数还是比较简单的 微信二维码指向首页
然后在index.js编写 onLoad (option) { console.log(option) } 然后请求后台交互 将参数传过去 ,本来后台接口已经写好了 我想今天的工作可以告一段段落了,尼玛没想到检查数据的时候发现id根本没有获取到 在本地测试的时候可以

  

    这样操作开发工具 就会获取到参数  接着去后台打印的时候你就会发现你传过去的参数根本不是1,而是{‘id’:'1'},我日 就没遇到过他们这种的

    所以如果本地测试的话还得需要进行一下操作 兄弟我是直接被征服了  随便截取了一下1前边的7个字符 后边的2个字符 这样才得到完整’1‘,

    尼玛,这个小程序简直不要太坑

												

最新文章

  1. C语言 完美字符串
  2. BurpSuite导出log配合SQLMAP批量扫描注入点
  3. BZOJ 2751 容易题
  4. 编写可维护的JavaScript—语句和表达式&amp;变量、函数和运算符
  5. UNIX网络编程 12 15共享内存区
  6. windows下使用pthread
  7. 【Maven】构建war包时排除web.xml
  8. python webdriver环境搭建
  9. imgAreaSelect 中文文档
  10. Servlet中的request对象、重定向和转发的差别(6)
  11. AWS是怎么改写 MySQL的?
  12. 《mongoDB》索引
  13. bzoj3261: 最大异或和 可持久化trie
  14. liunx文件操作 文件查看
  15. spring BeanUtils 工具实现对象之间的copy
  16. POJ2739 Sum of Consecutive Prime Numbers 2017-05-31 09:33 47人阅读 评论(0) 收藏
  17. 配置tomcat虚拟路径
  18. tensorflow 滑动平均使用和恢复
  19. ROS知识(8)----CMakeLists.txt文件编写的理解
  20. jQuery.fill 数据填充插件

热门文章

  1. Codeforces Round #597 (Div. 2)
  2. CentOS 7 常用命令大全(转)
  3. ES6---修饰器
  4. 深入理解JVM虚拟机4:Java class介绍与解析实践
  5. javascript的正则表达式总结
  6. Ionic 的安装运行
  7. Angular 中的数据交互(get jsonp post)
  8. int 和String之间的相互转换
  9. ISO/IEC 9899:2011 条款5——5.2.3 信号与中断
  10. 批量删除Maven 仓库未下载成功.lastupdate 的文件