2016-03-28 16 views
0

içinde kıvrılma isteğini ayrıştırılamıyor Aşağıdaki URL istekleri bir url biçimine nasıl eklenir?httpget

HttpGet httpGetRequest = new HttpGet("curl -XGET 'localhost:9200/indexname/status/_search?pretty=1&size=10000' -d '{"_source": {"include": [ "ID", "Name" ]}}''"}; 

Hata şu anda düzgün bir http url biçimi değil. Herhangi bir tavsiye? Teşekkürler.

+0

'cURL' kullanmak istiyor musunuz ya da' HttpGet' kullanmak istiyor musunuz? Eğer 'cURL' kullanmak istiyorsanız, 'java.lang.Runtime.getRuntime()' ı kullanın. Exec() 'onu çağırmak için, ya da göründüğü gibi, aslında 'HttpGet' kullanmak istiyorsanız, lütfen bırakın" string'inden "curl -XGET". –

+1

İç içe geçmiş tırnaklarınız var gibi görünüyor ... muhtemelen onlardan kaçmanız gerekecek. – billjamesdev

+0

Kıvrılma -XGET'i bırakırsam uygun bir URL değildir. Bu benim de sorum. Bu isteği, httget yöntemine girebileceğim bir Doğru URL'ye nasıl değiştiririm? – Sweet

cevap

0

Kıvrılma komutunuz veri gönderiyor. Böyle bir amaç için POST kullanmalıdır: durumunda

StringRequestEntity entity = new StringRequestEntity(
    JSON_STRING, 
    "application/json", 
    "UTF-8"); 

PostMethod post = new PostMethod("http://example.com/action"); 
postMethod.setRequestEntity(entity); 
int statusCode = httpClient.executeMethod(post); 

Eğer gerçekten HttpEntityEnclosingRequestBase kendi alt sınıfı oluşturmak için gereken bir istek gövdesini içeren bir GET göndermek istiyorum. Detaylar için bkz. Apache HttpClient GET with body.