#java #jakarta-ee #restlet
#java #джакарта-ee #restlet
Вопрос:
Когда я пытаюсь подключиться к API Википедии для поиска информации об авторе в localHost, все идет идеально, но когда я пытаюсь развернуть приложение в облаке Google, я получаю ошибку поиска: «Ошибка связи (1001) — соединителю не удалось завершить связь с сервером)».
Я думаю, что, возможно, ошибка заключается в том, что, когда я пытаюсь выполнить поиск в localhost, протоколом является HTTP, но когда я развертываю приложение, протоколом поиска является HTTPS
package aiss.model.resource;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.restlet.resource.ClientResource;
import org.restlet.resource.ResourceException;
import aiss.model.wikipedia.Query;
import aiss.model.wikipedia.Resu<
public class WikipediaResource {
private static final Logger log = Logger.getLogger(WikipediaResource.class.getName());
private final String baseURL = "https://en.wikipedia.org/w/api.php?action=queryamp;format=jsonamp;list=searchamp;utf8=1amp;srsearch=";
public Query getSearch(String query) throws UnsupportedEncodingException {
String autor = URLEncoder.encode(query, "UTF-8");
String uri = baseURL autor;
log.log(Level.FINE, "URI:" uri);
ClientResource cr = null;
Result search = null;
try {
cr = new ClientResource(uri);
search = cr.get(Result.class);
log.warning("SUCCESS: " cr.getResponse().getStatus());
return search.getQuery();
} catch (ResourceException e) {
log.warning("Search error in Wikipedia api: " cr.getResponse().getStatus());
log.warning(uri);
return null;
}
}
}
Я не знаю, что мне нужно добавить, чтобы исправить эту ошибку, может быть, мне нужно передать серверу другой заголовок?
Спасибо за внимание