- 网页调用微信接口上传图片手机微信可以但电脑微信端不行是为什么?
之前大佬说要提交复现问题的简单代码片段到(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。 我这个问题是网页程序,上面这个代码片段是小程序的,没法弄呢. 还请大佬大概看一下我的问题是:(代码已经精简,所有的消息都是jssdk返回的。) 同样的代码,在手机微信使用没有问题。可以正常上传图片,用PC的微信,微信工具都不可以 。 [图片] 用PC的微信返回{"errMsg":"uploadImage:permission denied"} 在微信工具里面,返回 {errMsg: "uploadImage:ok", serverId: "1237378768e7q8e7r8qwesafdasdfasdfaxss111"} 但实际上这个serverid是无效的,获取图片时会提示error:{"errcode":40007,"errmsg":"invalid media_id hint: [u_kCTa0004p502] [图片] [图片] 这是什么问题呢,以前的PC微信也可以上传图片。难道 是版本的问题? <!doctype html> <html> <head> <meta charset="utf-8"> <script language="javascript" src="../addons/ewei_shop/static/js/require.js"></script> <script language="javascript" src="../addons/ewei_shop/static/js/dist/jquery-1.11.1.min.js"></script> </head> <title>上传图片测试</title> <body > <div class="upimg" style="width:50%;margin-top:30px;background-color:#00cc66;padding:20px;text-align: center;color:#fff;margin:20px auto"> 点击上传图片 </div> </body> <script> require(['http://res.wx.qq.com/open/js/jweixin-1.6.0.js'],function(wx){ jssdkconfig = {"appId":"wx70c5c564b4a6ae0a","nonceStr":"NVfqMFbu20ZYm9Fr","timestamp":"1692756314","signature":"bbdb951aa5b20a34d8e4bc38507b25630e6474f2"} || { jsApiList:[] }; jssdkconfig.debug = true; jssdkconfig.jsApiList = [ 'checkJsApi','chooseImage','previewImage','uploadImage','downloadImage',] wx.config(jssdkconfig); wx.ready(function () { var images = { localId: [], serverId: [] }; $('.upimg').click(function(){ $('#debug').html('jssdkconfig:<br>'+JSON.stringify(jssdkconfig)); wx.chooseImage({ success: function (res) { images.localId = res.localIds; upload(); } });// wx.chooseImage });//点图片上传 function upload() { wx.uploadImage({ localId: images.localId[0], isShowProgressTips: 1, success: function (res) { //alert("上传成功"); }, fail: function (res) { //alert('上传失败'); } }); } });//加载完成后执行 }); </script> </body> </html>
2023-08-23 - 调用 wx.uploadImage 手机没问题,PC微信不行是为什么?
同样的代码,在手机微信使用没有问题。可以正常上传图片。 [图片] 用PC的微信就不可以 ,返回{"errMsg":"uploadImage:permission denied"} 在微信工具里面,返回 {errMsg: "uploadImage:ok", serverId: "1237378768e7q8e7r8qwesafdasdfasdfaxss111"} 但实际上这个serverid是无效的,获取图片时会提示error:{"errcode":40007,"errmsg":"invalid media_id hint: [u_kCTa0004p502] [图片] 这是什么问题呢,以前的PC微信也可以上传图片。难道 是版本的问题? <!doctype html> <html> <head> <meta charset="utf-8"> <script language="javascript" src="../addons/ewei_shop/static/js/require.js"></script> <script language="javascript" src="../addons/ewei_shop/static/js/dist/jquery-1.11.1.min.js"></script> </head> <title>上传图片测试</title> <body > <div class="upimg" style="width:50%;margin-top:30px;background-color:#00cc66;padding:20px;text-align: center;color:#fff;margin:20px auto"> 点击上传图片 </div> </body> <script> require(['http://res.wx.qq.com/open/js/jweixin-1.6.0.js'],function(wx){ jssdkconfig ={"appId":"wx70c5c564b4a6ae0a","nonceStr":"NVfqMFbu20ZYm9Fr","timestamp":"1692756314","signature":"bbdb951aa5b20a34d8e4bc38507b25630e6474f2"} || { jsApiList:[] }; jssdkconfig.debug = true; jssdkconfig.jsApiList = [ 'checkJsApi', 'chooseImage', 'previewImage', 'uploadImage', 'downloadImage', ] wx.config(jssdkconfig); wx.ready(function () { var images = { localId: [], serverId: [] }; $('.upimg').click(function(){ $('#debug').html('jssdkconfig:<br>'+JSON.stringify(jssdkconfig)); wx.chooseImage({ success: function (res) { images.localId = res.localIds; upload(); } });// wx.chooseImage });//点图片上传 function upload() { wx.uploadImage({ localId: images.localId[0], isShowProgressTips: 1, success: function (res) { //alert("上传成功"); }, fail: function (res) { //alert('上传失败'); } }); } });//加载完成后执行 }); </script> </body> </html>
2023-05-10