【问题标题】:Get UserId from the Session Id and Server URL从 Session Id 和 Server URL 中获取 UserId
【发布时间】:2012-10-19 11:27:08
【问题描述】:

我有一个要求,我将在其中获取会话 ID 和服务器 URL(网络服务方法的参数)。

这样说:

会话 ID : 00D900000xxxxxx!ARUAQOb4VVoQR1UXlY_Hvuy1DdKdN6nSfnNJKYwPTF9R3tYuA2jzBsWXHIGDQUFL13iebnYSDKKC45H98TzVxxxxxxxxxx

服务器网址: https://ap1.salesforce.com/services/Soap/u/12.0/00D900000xxxxxx

现在我需要从这两个获取用户 ID(或任何其他用户详细信息)。

提前致谢!!

尼丁

【问题讨论】:

    标签: salesforce apex-code sessionid


    【解决方案1】:

    您可以使用具有GetUserInfo 方法的SOAP API。调用此方法将返回一个GetUserInfoResult 对象,该对象将包含与会话关联的用户 ID。

    【讨论】:

      【解决方案2】:

      Adam,GetUserInfo 方法需要我们可以通过调用方法创建的现有连接对象,所以我应用了以下代码,现在一切正常!

      ConnectorConfig 配置 = 新的 ConnectorConfig(); config.setAuthEndpoint("https://login.salesforce.com/services/Soap/c/24.0/"); config.setServiceEndpoint("https://na14.salesforce.com/services/Soap/c/24.0/00DXXXXXXXXXXXX"); config.setSessionId("00DXXXXXXXXXXXX!1AQ4AQO980Fmu25SOFQxxOlQN8zAaHOlnfdk._rZU2Vkf_CV0HJREqKavMLaPg9jtA9N517MNHLdLeF.aVkoZtnk2eu7u.XNn"); 连接=新的企业连接(配置);获取用户信息结果 userInfo = connection.getUserInfo();

      我使用了从查询参数字符串中收到的相同服务器 URL 和 sessionId。

      【讨论】:

      • 你可以删除整个答案。但是您的代码仍然是一个有用的示例并且是一个有效的答案,那么您为什么不编辑它呢?只需删除错误并说“......并确保您传递的 SessionId 不是 URLencoded”或其他内容:)
      • 酷,我第一次对问题投反对票并为答案投赞成票(因为我担心这是试图从 cookie 或类似的东西中捕获值并劫持会话信息)。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 2012-05-10
      • 2012-10-03
      • 1970-01-01
      • 2016-10-28
      • 2020-09-08
      相关资源
      最近更新 更多