C#.NET WebApi返回各种类型(图片/json数据/字符串),.net图片转二进制流或byte

时间:2022-02-06 21:39:47
using System.IO;
/// <summary>
/// WebApi返回图片
/// </summary>
public HttpResponseMessage GetQrCode()
{
    var imgPath = @"D:\ITdosCom\Images\itdos.jpg";
    //从图片中读取byte
    var imgByte = File.ReadAllBytes(imgPath);
    //从图片中读取流
    var imgStream = new MemoryStream(File.ReadAllBytes(imgPath));
    var resp = new HttpResponseMessage(HttpStatusCode.OK)
    {
        Content = new ByteArrayContent(imgByte)
        //或者
        //Content = new StreamContent(stream)
    };
    resp.Content.Headers.ContentType = new MediaTypeHeaderValue("image/jpg");
    return resp;
}
/// <summary>
/// WebApi返回json数据
/// </summary>
public HttpResponseMessage GetQrCode()
{
    var jsonStr = "{\"IsSuccess\":true,\"Data\":\"www.itdos.com\"}";
    var result = new HttpResponseMessage(HttpStatusCode.OK)
                    {
                        Content = new StringContent(jsonStr, Encoding.UTF8, "text/json")
                    };
    return result;
}
/// <summary>
/// WebApi返回字符串
/// </summary>
public HttpResponseMessage GetQrCode()
{
    var str = "IT大师www.itdos.com";
    var result = new HttpResponseMessage(HttpStatusCode.OK)
                    {
                        Content = new StringContent(str, Encoding.UTF8, "text/plain")
                    };
    return result;
}