微信开放平台使用jssdk的wx.uploadImage上传文件后无法在后台获取?
发布于 6 年前 作者 juanjia 1799 次浏览 来自 官方Issues

如题,最近在微信开放平台–>第三方平台 ,建立的 ”平台型服务商类型的应用,通过公众号授权的方式替公众号实现相关接口。

在调试jssdk时通过wx.uploadImage以及wx.uploadVoice两个接口,实现图片与语音消息。
上传资源后得到的serverID,在后端通过获取临时素材接口(https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/Get_temporary_materials.html)
去获取相关资源时一直报 {"errcode":40007,"errmsg":"invalid media_id hint: [jCk95a09468729]"} 。

已反复确定component_access_token与authorizer_access_token无误。
使用authorizer_access_token在”微信公众平台接口调试工具(http://mp.weixin.qq.com/debug?token=1478352016&lang=zh_CN)“测试过”多媒体文件上传“、”下载多媒体文件“接口都是正确的。
而且在”微信公众平台接口调试工具“页面测试”多媒体文件上传“后得到的media_id,在我代码里面可以正常下载。

为什么jssdk(jssdk获取js_api_ticket也是使用的authorizer_access_token)上传后得到的serverID 一直报:invalid media_id 
 
以上问题有大神遇到过吗?
2 回复

出错码40007,说明media_id不对

以下是我模拟的请求。

curl -l -G “https://api.weixin.qq.com/cgi-bin/media/get?access_token=30_s6oLH31ryAw0z9MG5hp3cxdZ7Bn0LKGAeprRDoP5P5jxzeOC45XRTQYGH9aP3LfaeLtgI5Xa2fiIsaqWUJClVEXmlBqRLYo_-Ma5fRe6TDdDH94lIR_vNJJ0Y7ool9AHgJGmli5Osd3XpUYyVHZeADDAME&media_id=PuMrG1gfb-XIpInukAkxP83xkTtwzDU8T2GsXBin1QL7u0Q1MbZslxbu2MwaL6qP”

access_token是通过component_access_token获取的。
授权第一次获取是:https://api.weixin.qq.com/cgi-bin/component/api_query_auth?component_access_token=component_access_token
刷新获取是:
https://api.weixin.qq.com/cgi-bin/component/api_authorizer_token?component_access_token=component_access_token

我的component_appid是wx5e2704c62d523308

我的authorizer_appid是wxe90b67db0cfe9eb7

回到顶部