写asp.net微信开发获取素材的代码
时间: 2024-06-09 22:07:31 浏览: 107
asp.net 微信开发 代码
4星 · 用户满意度95%
以下是使用 ASP.NET 开发微信公众号获取素材的示例代码:
```csharp
using System.IO;
using System.Net;
using System.Web.Mvc;
using Senparc.Weixin.MP.AdvancedAPIs;
using Senparc.Weixin.MP.Containers;
public class MaterialController : Controller
{
public ActionResult Get(string media_id)
{
var accessToken = AccessTokenContainer.GetAccessToken("YOUR_APPID", "YOUR_APPSECRET");
// 获取素材流
var result = MediaApi.Get(accessToken, media_id);
Stream stream = result;
// 写入到输出流
Response.Clear();
Response.Buffer = true;
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment;filename=" + media_id + ".jpg");
Response.BinaryWrite(ReadFully(stream));
Response.End();
return null;
}
// 读取流并将其转换为字节数组
private static byte[] ReadFully(Stream input)
{
using (MemoryStream ms = new MemoryStream())
{
input.CopyTo(ms);
return ms.ToArray();
}
}
}
```
在 Get 方法中,我们使用 `MediaApi.Get()` 方法获取指定 media_id 的素材流。然后,我们将素材流写入输出流,以便用户可以下载该素材。
请注意,上述示例代码仅适用于图片素材。如果要下载其他类型的素材,需要根据其 MIME 类型设置正确的 `ContentType`。
阅读全文