如何使用微信的jssdk上传图片到自己的服务器

目前的wx.uploadImage 是临时上传到微信的服务器,如何上传图片到自己的服务器?

阅读 37.4k
2 个回答

微信的服务器哈,每次上传以后你都会拿到一个media_id,你可以利用这个ID通过微信的API去拉取图片到自己的服务器。但是每天好像限制在了10000次/天。但是对于普通的开发应该是满足了

wx.uploadImage 接口在文件上传成功后,会返回 serverId(即 media_id),种用 serverId 可以去微信服务器去将文件下载到自己的服务器。

要代码是吧?

$accessToken = '公众号 AccessToken';
$media_id = 'wx.uploadImage 返回的 serverId';

// 要存在你服务器哪个位置?
$targetName = './tmp/'.date('YmdHis).'.jpg';

$ch = curl_init("http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={$accessToken}&media_id={$serverId}");
$fp = fopen(FCPATH.$targetName, 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);

https://github.com/thenbsp/Wechat

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进