Русские буквы в GET-запросе к сервисам google в Java
Пытаюсь выполнить запрос https://script.google.com/macros/s/AKfycbzvHqXSXY0LgwfFeltbNS_iYCcge8re0s-uY0-lvSJ0uuMDENoS/exec?message=привет&langin=ru&langout=en Попробовал два способа через URL и Jsoup, но результат никакой :( Программа должна вывести hello, но получаю вот такое в консоле:
приве� �' приве� � done
Сам код программы:
import org.apache.commons.io.IOUtils;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.security.GeneralSecurityException;
public class AppsScriptQuickstart {
public static void main(String... args) throws IOException, GeneralSecurityException {
URL url = new URL("https://script.google.com/macros/s/AKfycbzvHqXSXY0LgwfFeltbNS_iYCcge8re0s-uY0-lvSJ0uuMDENoS/exec?message=" + URLEncoder.encode("привет", "UTF-8") + "&langin=ru&langout=en");
URLConnection con = url.openConnection();
InputStream in = con.getInputStream();
String encoding = con.getContentEncoding();
// encoding = "UTF-8";
encoding = encoding == null ? "UTF-8" : encoding;
String body = IOUtils.toString(in, encoding);
System.out.println(body);
Document doc = Jsoup.connect("https://script.google.com/macros/s/AKfycbzvHqXSXY0LgwfFeltbNS_iYCcge8re0s-uY0-lvSJ0uuMDENoS/exec?message=" + URLEncoder.encode("привет", "UTF-8") + "&langin=ru&langout=en").get();
System.out.println(doc.body().text());
System.out.println("done");
}
}