使用Spring Thymeleaf发送HTML邮件时图片无法渲染显示的问题求助
Spring Thymeleaf发送HTML邮件时图片无法渲染显示的问题求助
各位好,我现在碰到一个棘手的问题:用Spring Thymeleaf渲染的HTML模板里的图片,在浏览器里能正常显示,但通过Outlook发送邮件后,图片就没办法渲染出来了。以下是我的相关代码和配置,麻烦大家帮忙排查下哪里出问题了?
我的HTML模板代码
<div class="headerFrame"> <div class="innerFrame"> <img class="innerFrame" src="@{/static/images/rsilogo.png}" th:src="${springLogo}" alt="RSI"/> </div> </div>
Service中设置上下文变量的代码
Context context = new Context(); context.setVariable("springLogo", "/static/images/rsilogo.png");
Thymeleaf配置类代码
public SpringTemplateEngine springTemplateEngine() { SpringTemplateEngine springTemplateEngine = new SpringTemplateEngine(); springTemplateEngine.addTemplateResolver(emailTemplateResolver()); return springTemplateEngine; } public ClassLoaderTemplateResolver emailTemplateResolver() { ClassLoaderTemplateResolver emailTemplateResolver = new ClassLoaderTemplateResolver(); emailTemplateResolver.setPrefix("/templates/"); emailTemplateResolver.setSuffix(".html"); emailTemplateResolver.setTemplateMode(TemplateMode.HTML); emailTemplateResolver.setCharacterEncoding(StandardCharsets.UTF_8.name()); emailTemplateResolver.setCacheable(false); return emailTemplateResolver; }
目前的情况是,直接在浏览器访问对应页面时,图片能正常加载显示;但把这个模板作为邮件内容发送到Outlook后,图片就显示不出来了。有没有大佬能指点一下问题出在哪?
备注:内容来源于stack exchange,提问作者Vaishnav Puram
相关产品推荐
相关产品推荐

