我想从服务器下载图像并显示出来。我得到标题类型图像/png作为现在如何转换为图像?
我得到了头像:
缓存-控制:公共,最大年龄=86400连接:保持活动日期:2018年11月30日12:32:08格林尼治时间保持活动: timeout=5,max=99 OkHttp-接收-Millis: 1543581128745 OkHttp-Selected-协议:http/1.1OkHttp-发送-Millis: 1543581128514 Server: Apache/2.4.33 (亚马逊) OpenSSL/1.0.2k-fips PHP/7.0.30 X-由以下驱动: PHP/7.0.30内容长度: 26190内容类型:图像/png保持活动: timeout=5,max=99 OkHttp-接收-Millis: 1543581128745 OkHttp-选择-协议:http/1.1Okhttp-发送-Millis: 1543581128514 X供电-By: PHP/7.0.30 }
public async Task<AvatarModel> GetAvatar(string dpi, Int64 uin)
{
var response = await BasicRequestAsync(string.Format(AVATAR_URL, dpi, uin), HttpMethod.Get, true, null, null, false);
if(response == null) return null;
var stream = await response.Content.ReadAsStreamAsync();
.....
}Serwer:标题:
IMToken: 123123123 uin: 123 用户代理:.
返回带有标题内容类型: image/png的未打包映像。
public class AvatarModel
{
public AvatarModel() { }
public AvatarModel(AvatarResponseModel model)
{
Id = model.Id;
Base64 = model.Base64;
}
public Int64 Id { get; set; }
private string base64;
public string Base64
{
get { return base64; }
set
{
base64 = value;
AvatarImage = Xamarin.Forms.ImageSource.FromStream(
() => new MemoryStream(Convert.FromBase64String(base64)));
}
}
public ImageSource AvatarImage { get; set; }
} public class AvatarResponseModel
{
[JsonProperty("Id")]
public Int64 Id { get; set; }
[JsonProperty("base64")]
public string Base64 { get; set; }
}发布于 2018-12-03 10:30:29
我做了那样的事,但我不知道它是否好?
public async Task<Image> GetAvatar(string dpi, Int64 uin)
{
var response = await BasicRequestAsync(string.Format(AVATAR_URL, dpi, uin), HttpMethod.Get, true, null, null, false);
if(response == null) return null;
var stream = await response.Content.ReadAsByteArrayAsync();
Image image = new Image();
image.Source = ImageSource.FromStream(() => new MemoryStream(stream));
return image;
}https://stackoverflow.com/questions/53583392
复制相似问题