You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Salesforce apex:image图片加载失败 恳请协助排查原因

问题描述

我创建了一个可生成带Logo和签名的PDF文件的Visualforce模板,但从昨日起模板中的Logo图片无法显示。先后尝试了以下两段代码,均无效果:

<apex:image value="https://c.fra32.content.sfdc-urlt2q.force.com/servlet/servlet.ImageServer?id=015b0000001kbLy&oid=00Db0000000ImQQ&lastMod=118425000&InstHostname=c.eu2.content.force.com"/>
<img  src="https://c.eu2.content.force.com/servlet/servlet.ImageServer?id=015b0000001kbLy&oid=00Db0000000ImQQ&lastMod=1440418425000" />

查阅了Visualforce开发者指南后仍未找到原因,需要协助排查问题根源。

排查步骤
  • 验证图片URL可访问性:直接将两个URL复制到浏览器中打开,确认是否能正常显示图片。若无法访问,说明图片资源本身存在问题(如记录被删除、权限不足或实例域名变更)。
  • 检查Document记录核心设置:图片ID为015开头(对应Salesforce Document对象),需确认该Document记录的Externally Available Image选项是否已勾选。此选项未开启时,PDF渲染服务无法加载该图片。
  • 确认用户权限配置:确保生成PDF的运行用户(如Visualforce页面访问用户)对该Document记录拥有读取权限,同时检查Document所在文件夹的共享设置是否允许该用户访问。
  • 统一实例域名参数:第一个URL同时出现fra32域名和InstHostname=c.eu2.content.force.com,存在实例域名冲突。尝试简化URL,去掉冗余参数,使用相对路径或匹配当前实例的域名:
    <apex:image value="/servlet/servlet.ImageServer?id=015b0000001kbLy&oid=00Db0000000ImQQ"/>
    
    或使用当前实例的正确完整域名(如c.fra32.content.sfdc-urlt2q.force.com),移除InstHostname参数。
  • 排查实例迁移或域名变更:若近期Salesforce实例有迁移(如从eu2转到fra32),旧实例域名可能已失效,需确认当前实例的正确域名并更新URL。
  • 检查PDF渲染安全限制:在Salesforce设置中,确认PDF渲染服务相关配置是否正常,是否有安全策略(如内容安全策略)限制了图片资源的加载。

内容的提问来源于stack exchange,提问作者Julio Ludovic Ramihone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 02:25:08