【问题标题】:Replace image source in JSON String response替换 JSON 字符串响应中的图像源
【发布时间】:2019-09-23 02:15:01
【问题描述】:

我需要检查我收到的 JSON 响应中是否包含图像源标签,并在其中替换或添加前缀,然后使用 Glide 下载该图像。

实际上,由于图像源是内部的并且其中没有域名前缀,因此我无法显示响应中包含的图像。

例如:

<img alt=\"Image1\" src=\"/sites/default/files/Image1.jpg\"/>

此图片不会显示。

尝试了不同的方法来做到这一点,但没有成功。

String htmlText = this.jsonContent.replace("src=\\", "src=\\https://somesite.com/");

有什么更好的方法来实现这一点?

【问题讨论】:

    标签: java android html json string


    【解决方案1】:

    试试这个

         String jsonContent = "" +
                "<img alt=\"Image1\" src=\"/sites/default/files/Image1.jpg\"/>" + "\n" +
                "<img alt=\"Image1\" src=\"/sites/default/files/Image1.jpg\"/>" + "\n" +
                "<img alt=\"Image1\" src=\"/sites/default/files/Image1.jpg\"/>" + "\n" +
                "<img alt=\"Image1\" src=\"/sites/default/files/Image1.jpg\"/>";
    
        String htmlText = jsonContent.replaceAll("src=\"", "src=\"https://somesite.com");
    

    【讨论】:

    • jsonContent 对象中没有这样的键“image_source”。它只是一个普通的 html 正文内容。
    • 那么 html 正文不是您在问题中提到的 json。您是否在 json 响应中获取 html 存根?
    • 我得到一个包含 html 标签的字符串,然后我把字符串放在 webview 中。但无法显示图像,因为来源是内部的
    • 这里不需要使用 Glide。感谢您的帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-12
    • 1970-01-01
    • 1970-01-01
    • 2016-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多