你的位置:首页 > ASP.net教程

[ASP.net教程].net 微信上传媒体文件


微信开发时候有需求需要上传素材,

以接口http://qydev.weixin.qq.com/wiki/index.php?title=%E4%B8%8A%E4%BC%A0%E4%B8%B4%E6%97%B6%E7%B4%A0%E6%9D%90%E6%96%87%E4%BB%B6 为例

感觉文档写得不够详细media这些该怎么处理不是很明确。网上也少有.net资料来处理该业务。

其实可以这样处理:

using (WebClient client = new WebClient())
{

  byte[] b = client.UploadFile(string.Format("https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token={0}&type={1}", token, mt.ToString()), filepath);//调用接口上传文件
  retdata = Encoding.Default.GetString(b);//获取返回值

}

 

另外补充点,临时素材文件:(media_id)会在上传到微信服务器3天后自动删除,以节省服务器资源。而永久素材文件:(media_id)会一直保存在微信服务器上,但是对企业能够保存的永久素材数量有所限制: 整个企业图文消息素材和图片素材数目的上限为5000,其他类型为1000.

 

如果不注意的话,超出材料上限的话是不能够正常显示的。

如果没有记录media_id 的话这个时候可以另外写程序分别调用

http://qydev.weixin.qq.com/wiki/index.php?title=%E8%8E%B7%E5%8F%96%E7%B4%A0%E6%9D%90%E5%88%97%E8%A1%A8

获取media_id,之后遍历请求

http://qydev.weixin.qq.com/wiki/index.php?title=%E5%88%A0%E9%99%A4%E6%B0%B8%E4%B9%85%E7%B4%A0%E6%9D%90

做删除操作。