3

サンドボックス環境でChatterAPI呼び出しを理解しようとしていました。テスト中に更新トークンを保存しましたが、後で失われました。

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で新しいアクセスを作成します
  • セキュリティトークンをリセットする

誰かがトークンを期限切れにする方法、またはセールスフォースのAPIまたはUIを介して新しい更新トークンを取得する方法を知っていますか?

4

2 に答える 2

4

UI からアクセス権を取り消すには、Salesforce の右上にあるメニューで次のようにクリックします。セットアップ | 私の個人情報 | 個人情報とクリック拒否

詳細はこちら: https://na12.salesforce.com/help/doc/en/remoteaccess_about.htm

どのスコープを使用していますか?スコープ ('api' など) を指定する場合は、スコープ (スペース区切り) で 'refresh token' も指定して、明示的に更新トークンを要求する必要があります。スコープの詳細: https://na12.salesforce.com/help/doc/en/remoteaccess_oauth_scopes.htm

Google とは異なり、Salesforce は、ユーザーがアプリを承認したかどうかに関係なく、更新トークンを複数回提供します。

私は、Google の OAuth プレイグラウンドを使用してこれをいじっています。右上の歯車をクリックして、Salesforce のサービスの値を指定できます。認証エンドポイント: https://login.salesforce.com/services/oauth2/authorize トークン エンドポイント: https://login.salesforce.com/services/oauth2/token クライアント ID/シークレット: Salesforce の「コンシューマー」キー/シークレット情報からリモート アクセス構成で

アプリの構成でコールバック URL として「https://code.google.com/oauthplayground/」を使用する必要があります。

于 2012-05-18T22:36:00.020 に答える