Android Studio: как взять файл JSON на странице HTTPS

Я использую этот код для получения XML или JSON из Интернета, но он просто работает с HTTP. Так что он не работает на HTTPS, как Google API

https://ajax.googleapis.com/ajax/services/search/news?v=1.0&q=barack%20obama

Ошибка 405!

private String getXmlFromUrl(String urlString) {
    String xml = null;
    try {      
        DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost httpPost = new HttpPost(urlString);
        HttpResponse httpResponse = httpClient.execute(httpPost);
        HttpEntity httpEntity = httpResponse.getEntity();
        xml = EntityUtils.toString(httpEntity, HTTP.UTF_8);          
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    // return XML
    return xml;
}

person phuanh004    schedule 09.09.2015    source источник


Ответы (2)


вам нужно изменить свой код следующим образом: `

private String getXmlFromUrl(String urlString) {
String xml = null;
try {
    DefaultHttpClient httpClient = new DefaultHttpClient();
    //url request is get
    HttpGet httpGet = new HttpGet(urlString);

    HttpResponse httpResponse = httpClient.execute(httpGet);
    HttpEntity httpEntity = httpResponse.getEntity();
    xml = EntityUtils.toString(httpEntity, HTTP.UTF_8);

} catch (UnsupportedEncodingException e) {
    e.printStackTrace();
} catch (ClientProtocolException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}
// return XML
return xml; } 
person pRaNaY    schedule 09.09.2015

Вам нужно изменить метод запроса на GET.

person Eugene Kuleshov    schedule 09.09.2015