2

リクエスト トークンを連続して取得し、それをコンシューマー キーと組み合わせて使用​​して、次のリクエストを作成しています。

https://us.etrade.com/e/etws/authorize?key=2fc * ** * *** c323d6&token=IIrs6BsIrGQ * ** * *** *duC60GAmLq8

アスタリスクは、コンシューマ キーとリクエスト トークンに置き換えられています。これを getAuthorizeURL の引数として渡します これにより ETWSException が返され、端末の読み取りに出力されます

エラー OAuthClientImpl - 必須パラメータがありません

getAuthorizeURL メソッドに必要な 2 つの引数があり、それらが正しくフォーマットされていることは確かです。ここで何がうまくいかないのか誰にも教えてもらえますか?

また、getAuthorizeURL を呼び出すと、既定のブラウザーが開き、上記で入力したアドレスに移動しますが、404 エラーが返されます。

4

1 に答える 1

4

ドキュメントのサンプル コードを使用している場合は、1 個不足しています。

(ジャワ)

client = OAuthClientImpl.getInstance(); // Instantiate IOAUthClient 
    request = new ClientRequest(); // Instantiate ClientRequest 
    request.setEnv(Environment.SANDBOX); // Use sandbox environment 

    request.setConsumerKey(oauth_consumer_key); //Set consumer key 
    request.setConsumerSecret(oauth_consumer_secret); // Set consumer secret 
    token= client.getRequestToken(request); // Get request-token object

    oauth_request_token = token.getToken(); // Get token string 
    oauth_request_token_secret = token.getSecret(); // Get token secret 

    request.setToken(oauth_request_token);
    request.setTokenSecret(oauth_request_token_secret);

    String authorizeURL = null; 
    authorizeURL = client.getAuthorizeUrl(request);

    URI uri = new URI(authorizeURL);

    Desktop desktop = Desktop.getDesktop(); 
    desktop.browse(uri);

ドキュメンテーション サンプルで言及するのを忘れていました。get AuthorizeUri を呼び出す前に、Request オブジェクトにトークン キー/シークレットを設定する必要があります。

request.setToken(oauth_request_token); request.setTokenSecret(oauth_request_token_secret);

于 2014-03-03T04:33:01.497 に答える