2017-02-09 8 views
0

私はEtradeからJava SDKを使用してオプションの見積もりを取得しようとしています。私は現在、サンドボックスを使用するための設定です。ETrade APIでOptionQuoteを入手する方法

はここのコードです:私はm.getQuoteを呼び出すとき

ProductId prod = callOption.getProduct(); 

ArrayList<String> symbols = new ArrayList<String>(); 
// getSymbol returns GOOG Jan 22 '11 $150 Call 
symbols.add(prod.getSymbol()); 

// m is a MarketClient instance 
QuoteResponse quotes = m.getQuote(symbols, true, DetailFlag.OPTIONS); 

私はエラーを取得します。エラーは、私は、HTML(org.apache.commons.lang.StringEscapeUtils.escapeHtml)運とエスケープを使用してみました

ERROR ConnectionUtils - Invalid uri 'https://etwssandbox.etrade.com/market/sandbox/rest/quote/GOOG Jan 22 '11 $150 Call': escaped absolute path not valid 

です。

何が間違っていますか?

答えて

1

あなたのURLには特殊文字(空白とそうでないもの)があるからです。

この場合、URLエンコーダライブラリを使用できます。

URL全体の文字列を渡す必要があります。これにより、エンコードされたURLが得られます。詳細については

String encodedUrl = URLEncoder.encode(<url>); 

は、ここではドキュメントhttps://docs.oracle.com/javase/7/docs/api/java/net/URLEncoder.html

です
関連する問題