私はLucidworks Fusion(2.1.2)で作業を開始しており、最も快適なハッキングはGroovyです。サイドノート:Pythonのリクエストはこれをシームレスに処理しましたが、私は頑固で、Pythonを使用したくありません...Groovyを使ってLucidworks Fusion(solr wrapper)APIに接続するにはどうすればよいですか?
Fusionは有望です私はGroovyでの作業を楽しみにしています。
Groovyを使用してFusionで認証されたFusion認証APIに接続するにはどうすればいいですか(groovy-ishの方法で)?
私はいくつかのアプローチを試しています基本的なRESTClientが他の「シンプルな」ソリューションと一緒に私にとってうまくいかない理由に関するフィードバックを歓迎します。ここで
は、私が試したものです:不正401(符号化の私は信じているから)で失敗し
groovyx.net.http.HTTPBuilder hb = new HTTPBuilder(FUSION_API_BASE)
hb.auth.basic(user, pass)
。私も試してみました
compile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1'
:HTTPBuilderはGradleのから来た
HttpPost httpPost = new HttpPost(url);
List <NameValuePair> nvps = new ArrayList <NameValuePair>();
nvps.add(new BasicNameValuePair("username", "sean"));
nvps.add(new BasicNameValuePair("password", "mypass"));
httpPost.setEntity(new UrlEncodedFormEntity(nvps));
CloseableHttpResponse response2 = httpclient.execute(httpPost);
となった。また、試してみました
{"code":"unauthorized"}
を:投げ
String path = '/api/apollo/introspect'
URL url = new URL('http', 'corp', 8764, path)
try {
def foo = url.getContent()
log.info "Foo: $foo"
} catch (IOException ioe){
log.warn "IO ERR: $ioe"
}
(現在予想) IOError:401.誰かがもっと欲しいなら私の失敗のために私に知らせてください、そして、私は多分あなたにボリュームのある技術的な詳細を持っていました。
私は恥知らずに自分の質問に答えていますが、そこにある優雅な先生が私に少し教えてくれることを願っています。
要約すると、私が以下で見つけたよりも良い/面白い解決策がありますか?