给微信素材接口上传临时文件
支持上传的类型图片 音频 视频
通过form表单提交到微信接口
https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE
其中access_token 需要我们自己获取
type 则可以如下几个值:媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
正确时候返回:
{“type”:”TYPE”,”media_id”:”MEDIA_ID”,”created_at”:123456789}
失败返回:{“errcode”:40004,”errmsg”:”invalid media type”}
上传的临时多媒体文件有格式和大小限制,如下:
- 图片(image):2M,支持PNG\JPEG\JPG\GIF格式
- 语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式
- 视频(video):10MB,支持MP4格式
- 缩略图(thumb):64KB,支持JPG格式
实现我们新增一个aspx页面
<form id="form1" runat="server" method="post">
<div>
<asp:DropDownList ID="DropDownList1" runat="server">
<asp:ListItem Text="图片" Value="image"></asp:ListItem>
<asp:ListItem Text="语音" Value="voice"></asp:ListItem>
<asp:ListItem Text="视频" Value="video"></asp:ListItem>
<asp:ListItem Text="缩略图" Value="thumb"></asp:ListItem>
</asp:DropDownList><br />
<asp:FileUpload ID="FileUpload1" runat="server" /><br />
<input type="submit" name="提交" />
</div>
</form>Code language: HTML, XML (xml)
后台cs代码
private const string urlFormat = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";
private const string urlFormatForUp = "https://api.weixin.qq.com/cgi-bin/media/upload?access_token={0}&type={1}";
protected void Page_Load(object sender, EventArgs e)
{
Access_token_info obj = GetTokenInfo();
this.form1.Action = string.Format(urlFormatForUp, obj.access_token, this.DropDownList1.SelectedValue);
}
private Access_token_info GetTokenInfo()
{
string url = string.Format(urlFormat, appID, appSecret);
string json = Tool.HttpGet(url);
Access_token_info obj = Tool.DeserializeJson<Access_token_info>(json);
return obj;
}Code language: PHP (php)
Previous: 公众号发送消息包括文本 图片 图文 语音 视频 等等
Next: 上传音频Voice