2015-05-14 2 views
-1

У меня есть URL-адрес API, который отлично работает, если вы запускаете в расширенном клиенте отдыха хром напрямую. Я хочу, чтобы этот URL-адрес запускался из моего собственного кода API REST, который должен запускать его в расширенном клиенте отдыха и сохраняет результат в переменной. Как я могу это сделать?Запуск URL-адреса в Advanced Rest Client из java-программы

+0

Зачем вам нужно работать в расширенном клиенте отдыха? – Romski

ответ

0

Используйте библиотеку Apache HttpClient https://hc.apache.org/ или некоторые другие сторонние библиотеки с открытым исходным кодом для легкого кодирования. Если вы используете apache httpClient lib, пожалуйста, используйте Google для примера кода. Здесь крошечный пример.

HttpClient client = new DefaultHttpClient(); 
    HttpGet request = new HttpGet('http://site/MyrestUrl'); 
    HttpResponse response = client.execute(request); 
    BufferedReader rd = new BufferedReader (new InputStreamReader(response.getEntity().getContent())); 
    String line = ''; 
    while ((line = rd.readLine()) != null) { 
    System.out.println(line); 
    } 
    return (rd); 

Если есть какие-либо ограничения на использование сторонних банкоматов, вы можете сделать и в простой Java.

HttpURLConnection conn = null; 
    try { 

    URL url = new URL("http://site/MyRestURL"); 
    HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
    conn.setRequestMethod("GET"); 
    conn.setRequestProperty("Accept", ""); // add your content mime type 

    if (conn.getResponseCode() != 200) { 
     throw new RuntimeException("Failed : HTTP error code : " 
       + conn.getResponseCode()); 
    } 

    BufferedReader br = new BufferedReader(new InputStreamReader(
     (conn.getInputStream()))); 

    String output; 
    while ((output = br.readLine()) != null) { 
     System.out.println(output); 
    } 

    conn.disconnect(); 

    } catch (Exception e) { 

    e.printStackTrace(); 

    } 
+0

спасибо за ответ. это помогло мне с URL с http. но он не работал с https. Я попытался найти структуру similer для https, но не смог найти. не могли бы вы помочь мне с некоторой ссылкой или такой структурой, которая берет https-url. Благодарю. –

+0

Просмотрите вопрос и ответы. Это поможет вам, если вы хотите получить сертификат. http://stackoverflow.com/questions/1757295/using-https-with-rest-in-java –

+0

Это хорошо объясненный блог. http://javaskeleton.blogspot.de/2010/07/avoiding-peer-not-authenticated-with.html –

0

В простой java, попробуйте вот так. Мой совет, пожалуйста, попробуйте использовать хорошие клиенты с открытым исходным кодом/http. В сети много примеров.

String httpsUrl = "https://www.google.com/"; 
    URL url; 
    try { 
    url = new URL(httpsUrl); 
    HttpsURLConnection con = HttpsURLConnection)url.openConnection(); 
    } catch (MalformedURLException e) { 
    e.printStackTrace(); 
    } catch (IOException e) { 
    e.printStackTrace(); 
    } 
Смежные вопросы