【问题标题】:ASP.NET Base64 image source not displaying properly.ASP.NET Base64 图像源无法正确显示。
【发布时间】:2018-10-18 00:09:44
【问题描述】:

我通过 Lambda 函数从 Azure 活动目录获取 Base64 字符串。这代表用户个人资料图片。然后我试图在 ASP.NET 页面中显示它。它不工作。

这里是 ASP.NET(引用的 HTML 对象是一个 ASP 文字)

            using (var client = new AmazonLambdaClient(Amazon.RegionEndpoint.APSoutheast2))
            {
                var request = new InvokeRequest
                {
                    FunctionName = ConfigurationManager.AppSettings["lambdaArnPrefix"] + "lambda-wlyw-GetAzureAdUserThumbnail",
                    Payload = "\"" + Context.User.Identity.Name.ToString() + "\"",
                    InvocationType = InvocationType.RequestResponse

                };
                var response = client.Invoke(request);

                string result;
                using (var sr = new StreamReader(response.Payload))
                {
                    result = sr.ReadToEnd();
                }

                dynamic userThumbnail = JsonConvert.DeserializeObject(result);
                photo.Text = "<img src='data:image/jpg;base64," + userThumbnail.base64Image + "' width='100' height='100'/>";

但该页面显示损坏的图像图标。如果我查看源代码,我觉得还可以吗?如果我使用在线转换器,base64 字符串会解码为图像:

  <div class="panel-group">
                                            <div class="panel panel-primary">
                                                <div class="panel-heading">James Matson - Excellence<i class="fa fa-certificate pull-right"></i></div>
                                                <img src='data:image/jpg;base64,eyJvZGF0YS5lcnJvciI6eyJjb2RlIjoiUmVxdWVzdF9SZXNvdXJjZU5vdEZvdW5kIiwibWVzc2FnZSI6eyJsYW5nIjoiZW4iLCJ2YWx1ZSI6IlJlc291cmNlICd0aHVtYm5haWxQaG90bycgZG9lcyBub3QgZXhpc3Qgb3Igb25lIG9mIGl0cyBxdWVyaWVkIHJlZmVyZW5jZS1wcm9wZXJ0eSBvYmplY3RzIGFyZSBub3QgcHJlc2VudC4ifX19' width='100' height='100'/>

【问题讨论】:

    标签: html asp.net image base64


    【解决方案1】:

    找出问题所在 - 向所有人道歉。原来我缓存的凭据不存在,这意味着从 Lambda 函数返回的 Base64 字符串实际上不是图像,而是来自 Azure AD 的错误代码,即:

    {"odata.error":{"code":"Request_ResourceNotFound","message":{"lang":"en","value":"Resource 'thumbnailPhoto' does not exist or one of its queried reference-property objects are not present."}}}
    

    一旦我正确登录,图像就可以工作 - 所以如果有人想要一个如何实现这一点的工作示例,请使用上面的 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-27
      • 1970-01-01
      • 2019-03-20
      • 2020-08-27
      • 2021-09-26
      • 2018-12-10
      • 1970-01-01
      相关资源
      最近更新 更多