Nodejs获取Buffer并保存本地,axios
使用axios方案
async function onPostWxMpACode({ appId, appSecret, page, scene, env_version = 'release' }) {
try {
let data = await onGetWxMpAccessToken({ appId, appSecret })
const ret = await axios.post(
`https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=${data.access_token}`,
{
scene,
page,
env_version
},
{ responseType: 'arraybuffer' }
)
const errorBufferString = ret.data.toString()
if (errorBufferString.includes('errcode')) {
return JSON.parse(errorBufferString)
}
fs.mkdirSync('public/images', { recursive: true })
fs.writeFileSync('public/images/buffer.png', ret.data)
return { data: { url: '/images/buffer.png' } }
} catch (error) {
throw new Error(error.message)
}
}
示例是使用微信小程序生成小程序码做例子,注意是要约束{ responseType: 'arraybuffer' },之后用常规的保存即可。
1184

被折叠的 条评论
为什么被折叠?



