3

我在我的沙盒环境中工作,试图找出 Chatter API 调用 - 我在测试期间保存了我的刷新令牌,但后来​​它丢失了。

现在,当我尝试访问 API 时,我收到以下错误:

"expired access/refresh token"

我现在如何解决这个问题?我没有刷新令牌,因此我无法请求刷新我的令牌,并且我不确定如何通过 UI 过期/删除/撤销它,以便我可以继续我的测试。

我的 cUrl 调用如下:

curl
    --form client_id=3MVG92.u...2KycWe
    --form client_secret=668...930
    --form grant_type=password
    --form username=mike....com
    --form password=*#()@*#$@
    --proxy 127.0.0.1:3128 --insecure
  https://test.salesforce.com/services/oauth2/token 

我尝试过的事情:

  • 重置我的密码
  • 删除远程访问并使用新的 client_id / secret 创建一个新的
  • 重置我的安全令牌

有谁知道如何通过 Salesforce 中的 API 或 UI 使令牌过期或获取新的刷新令牌?

4

2 回答 2

4

要从 UI 撤消访问权限,请单击 Salesforce 右上角菜单中的以下内容: 您的姓名 | 设置 | 我的个人信息 | 个人信息并单击拒绝

更多信息: https ://na12.salesforce.com/help/doc/en/remoteaccess_about.htm

你用的是什么范围?如果您指定范围(如“api”),则需要通过在范围中指定“刷新令牌”(空格分隔)来显式请求刷新令牌。有关范围的更多信息: https ://na12.salesforce.com/help/doc/en/remoteaccess_oauth_scopes.htm

与 Google 不同,Salesforce 将多次提供刷新令牌,无论用户是否刚刚批准了应用程序。

我一直在使用Google 的 OAuth playground来解决这个问题。您可以单击右上角的齿轮并指定 Salesforce 服务的值。授权端点:https ://login.salesforce.com/services/oauth2/authorize 令牌端点:https ://login.salesforce.com/services/oauth2/token 客户 ID/秘密:来自 Salesforce 的“消费者”密钥/秘密信息在远程访问配置中

您需要在应用配置中使用“https://code.google.com/oauthplayground/”作为回调 URL。

于 2012-05-18T22:36:00.020 回答
0

这可以在您的帐户中完成:

My Settings | Select Personal | Advanced User Details | OAuth Connected Apps

可以在此处找到 salesforce 的确切步骤

于 2015-05-04T18:55:47.563 回答