微信小程序获取教务前端验证码传到后端
阿良自己琢磨的分为大概下面几步
一、先获取嘛
wx.request({
url: Url,
header: {
'content-type': 'application/json'
},
method: "get",
responseType: 'arraybuffer',//这里一定要arraybuffer
var str = res.data;
let base64 = wx.arrayBufferToBase64(res.data);
//先转base64
base64 = 'data:image/jpeg;base64,' + base64
//可以复制到网页上
console.log(base64);//输出看一下
二、传给后端 request
三、后端接受到前端传来的base64然后处理
①分析了两天发现传过来的base64里面的加号 “+” 变成了空格" "。
所以:
str_replace(" ","+",data);
②进行保存图片
public static function base64_image_content($base64_image_content){
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $base64_image_content, $result)){
$type = $result[2];//type是格式 比如jpeg
$picName = '';
for ($i = 1; $i <= 6; $i++) { //随机生成6位文件名
$picName .= chr(rand(97, 122));
}
$picName1 = $lujing."{$picName}.$type";//路径
if (file_put_contents($picName1, base64_decode(str_replace($result[1], '', $base64_image_content)))){
return $picName;
}else{
return false;
}
}else{
return false;
}
四、最后你到那个地址就可以看到图片了
加油