【问题标题】:API Token into SOAP header for Professional Edition support专业版支持的 SOAP 标头中的 API 令牌
【发布时间】:2018-11-02 08:33:46
【问题描述】:

我们的应用已成功通过安全审查和应用交换。该应用程序使用元数据 API 来创建远程站点设置,但专业版不支持元数据 API。我们从 Salesforce 获得了一个 api 令牌,我们将其插入到下面的 soap 标头中。虽然它在开发者/企业版中按预期运行,但在专业版中我们得到 500(服务器错误)。 请任何人提出以下实现和前进方向是否有问题。

'<?xml version="1.0" encoding="utf-8"?>' + 
            '<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">'+

                '<env:Header>' + 

                    '<urn:SessionHeader xmlns:urn="http://soap.sforce.com/2006/04/metadata">' + 
                        '<urn:sessionId>sessionhere</urn:sessionId>' + 
                    '</urn:SessionHeader>' + 
                     '<CallOptions>' +
                    '<client>blah/blahtoken/</client>' + 
                    '</CallOptions>' +
                '</env:Header>' + 
                '<env:Body>' +
                     '<createMetadata xmlns="http://soap.sforce.com/2006/04/metadata">' + 

                        '<metadata xsi:type="RemoteSiteSetting">' + 
                            '<fullName>Metadata</fullName>' +
                            '<description>Metadata API Remote Site Setting for Declarative Rollup Tool (DLRS)</description>' + 
                            '<disableProtocolSecurity>false</disableProtocolSecurity>' + 
                            '<isActive>true</isActive>' + 
                            '<url>https://some.ap4.visual.force.com</url>' +
                        '</metadata>' +
                    '</createMetadata>' +
                '</env:Body>' + 
            '</env:Envelope>';

【问题讨论】:

    标签: api soap header salesforce token


    【解决方案1】:

    500 服务器错误将是一个 SOAP 响应,请查看正文以了解有关错误的更多详细信息。

    问题很可能是你的 CallOptions 标头不在正确的 XML 命名空间中,应该是

    <CallOptions xmlns="http://soap.sforce.com/2006/04/metadata">
        <client>blah/blahtoken/</client>
    </CallOptions>
    

    【讨论】:

    • 感谢您的回复。我在 ISVforce 文档上发现了这一点,这就是为什么行为不像我们使用 VF 从 JS 调用 API 那样预期的原因。请提出任何替代方案。我们需要自动添加一个远程站点。 resources.docs.salesforce.com/214/latest/en-us/sfdc/pdf/… 客户端 ID 具有这些属性。 • 您不能将客户端 ID 与 AJAX 工具包一起用于自定义 JavaScript、S-control 或应用程序中可能向最终客户公开其价值的任何地方。
    猜你喜欢
    • 2011-09-25
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    • 2016-02-19
    • 2012-08-05
    • 2020-03-27
    • 1970-01-01
    • 2013-07-05
    相关资源
    最近更新 更多