asp.net 微信上传永久图片素材 返回44003 图文消息内容为空

bengkuidejianli 2015-04-30 02:07:44
下面是代码 ,我做的是先保存图片到指定路径,然后再用流读取这个文件,上传
protected void btnUpload_Click(object sender, EventArgs e)
{
#region
if (PublicParams.tokenWeiChart != null)
{
//isFile 上传图片的按钮Id
if (isFile.HasFile)
{
string savedPath = Server.MapPath("~/uploads/"); //保存文件的路径
string fileName = savedPath + isFile.FileName;
isFile.SaveAs(fileName);

FileStream fs1 = new FileStream(isFile.FileName, FileMode.Open);

StreamReader sr = new StreamReader(fs1, Encoding.GetEncoding("GBK"));
string dataImg = sr.ReadToEnd();
sr.Close();
fs1.Close();

Stream outstream = null;
Stream instream = null;
HttpWebResponse response = null;
HttpWebRequest request = null;
Encoding encoding = Encoding.UTF8;
byte[] data = encoding.GetBytes(dataImg);

#region
string str = "{\"media\":[{\"filename\":\"" + isFile.FileName + "\",\"filelength\":\"" + data.Length + "\",\"content-type\":\"text/plain\"}]}";
string url = "http://api.weixin.qq.com/cgi-bin/material/add_news?access_token=" + PublicParams.tokenWeiChart + "&type=image&media=" + str;
#endregion

// 准备请求...
try
{
// 设置参数
request = WebRequest.Create(url) as HttpWebRequest;
CookieContainer cookieContainer = new CookieContainer();
request.CookieContainer = cookieContainer;
request.AllowAutoRedirect = true;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
outstream = request.GetRequestStream();
outstream.Write(data, 0, data.Length);
outstream.Close();
//发送请求并获取相应回应数据
response = request.GetResponse() as HttpWebResponse;
//直到request.GetResponse()程序才开始向目标网页发送Post请求
instream = response.GetResponseStream();
sr = new StreamReader(instream, encoding);
//返回结果网页(html)代码
string content = sr.ReadToEnd(); //返回结果
}
catch (Exception ex)
{
string err = ex.Message;
}
}
}
else
{
CreateToken.CreateNewToken(); //Token不存在时,调用生成方法
}
#endregion
}


但是它一直返回 44003 即 图文消息内容为空

求解
...全文
666 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
bengkuidejianli 2015-12-15
  • 打赏
  • 举报
回复
整理好后,我会把上传临时素材成功的代码贴上来。很感谢楼上的耐心回复
uk8692 2015-05-12
  • 打赏
  • 举报
回复
引用 6 楼 bengkuidejianli 的回复:
[quote=引用 5 楼 uk8692 的回复:] [quote=引用 4 楼 bengkuidejianli 的回复:] [quote=引用 2 楼 uk8692 的回复:] 哥哥 ,你这是要上传永久图片素材还是永久图文素材?
不过,我type给它指定是image了[/quote] 你的接口掉错了,应该是:https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN,仔细查看。[/quote] 改过之后,就返回:41005 缺少多媒体文件数据 我的文件夹权限都是开放过的了 郁闷[/quote] 是不是你在上传图片到微信服务器时,media参数有问题。
bengkuidejianli 2015-05-12
  • 打赏
  • 举报
回复
引用 5 楼 uk8692 的回复:
[quote=引用 4 楼 bengkuidejianli 的回复:] [quote=引用 2 楼 uk8692 的回复:] 哥哥 ,你这是要上传永久图片素材还是永久图文素材?
不过,我type给它指定是image了[/quote] 你的接口掉错了,应该是:https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN,仔细查看。[/quote] 改过之后,就返回:41005 缺少多媒体文件数据 我的文件夹权限都是开放过的了 郁闷
uk8692 2015-05-11
  • 打赏
  • 举报
回复
引用 4 楼 bengkuidejianli 的回复:
[quote=引用 2 楼 uk8692 的回复:] 哥哥 ,你这是要上传永久图片素材还是永久图文素材?
不过,我type给它指定是image了[/quote] 你的接口掉错了,应该是:https://api.weixin.qq.com/cgi-bin/material/add_material?access_token=ACCESS_TOKEN,仔细查看。
bengkuidejianli 2015-05-11
  • 打赏
  • 举报
回复
引用 2 楼 uk8692 的回复:
哥哥 ,你这是要上传永久图片素材还是永久图文素材?
不过,我type给它指定是image了
bengkuidejianli 2015-05-11
  • 打赏
  • 举报
回复
引用 2 楼 uk8692 的回复:
哥哥 ,你这是要上传永久图片素材还是永久图文素材?
图片素材,它提示图文消息为空,意思是我调错接口了么?
uk8692 2015-05-05
  • 打赏
  • 举报
回复
哥哥 ,你这是要上传永久图片素材还是永久图文素材?
bengkuidejianli 2015-05-04
  • 打赏
  • 举报
回复
大婶们,求解。help

3,143

社区成员

发帖
与我相关
我的任务
社区描述
微信开发即微信公众平台开发,将企业信息、服务、活动等内容通过微信网页的方式进行表现,通过二次开发可以将公众账号由一个媒体型营销工具转化成提供服务的产品。
社区管理员
  • 微信开发
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧