Salesforce中基于Iframe的集成

Salesforce中基于Iframe的集成,iframe,salesforce,force.com,Iframe,Salesforce,Force.com,我想在Salesforce iFrame中显示我的站点,当有人在我的站点上的iFrame中执行任何活动时,我也想更新Salesforce页面 我可以这样做吗,请建议?您可以使用Javascript和页面刷新将信息发送到父窗口,但这不在我推荐的书籍中。出于安全原因,iFrame不打算与其父站点通信 您可能需要考虑使用API在两个站点之间进行通信。最近的一种方法,现在是GA,它是基于iframe的,具有额外的安全性和功能,包括将上下文(如Salesforce字段)传递到iframe中。它还允许ifr

我想在Salesforce iFrame中显示我的站点,当有人在我的站点上的iFrame中执行任何活动时,我也想更新Salesforce页面


我可以这样做吗,请建议?

您可以使用Javascript和页面刷新将信息发送到父窗口,但这不在我推荐的书籍中。出于安全原因,iFrame不打算与其父站点通信


您可能需要考虑使用API在两个站点之间进行通信。

最近的一种方法,现在是GA,它是基于iframe的,具有额外的安全性和功能,包括将上下文(如Salesforce字段)传递到iframe中。它还允许iframed web应用程序基于该身份验证调用Salesforce API,可以通过JavaScript,也可以通过后端web应用程序(Python、Java等)使用Canvas框架中的凭据

您还可以使用画布中的新事件功能将消息发送到framing Salesforce页面

关于身份验证选项:建议使用Canvas签名的请求身份验证,这很简单,但请注意,它不会为OAuth2提供刷新令牌-因此,如果需要根据用户的身份验证继续进行后台处理,则应使用Canvas OAuth2身份验证,它会为您提供刷新令牌


总的来说,画布比使用原始iframe更干净,应该简化开发。它确实需要对iframed web应用程序中的身份验证进行一些更改,但它们相对简单(10行左右的Python)。

我同意Luke的观点。浏览器安全性将阻止您从iFrame内与Salesforce页面通信。您最好的选择是利用Salesforce API对系统进行更新,然后您可以使用javascript通知顶级窗口进行自我刷新。他的问题没有明确说明用例。他可能根本不需要iFrame。在Salesforce中直接使用iFrame不是一个好主意-而是使用Force.com画布,它由Salesforce支持并免费提供身份验证-一种“增值iFrame”。你说的“Salesforce iFrame”是什么意思?您是否在VF页面上使用iFrame?还是在标准页面布局中使用iFrame?谢谢RichVel。画布方法看起来不错。我会查一查。@techagrammer-很好,还添加了一些关于身份验证的内容。当然,向上投票始终是一个选项:)