JavaFX - URL изображения не загружается - PullRequest
0 голосов
/ 09 марта 2019

строка кода nr.2 работает, но я не могу заставить работать код nr.1. ничего не показывает.

1) Изображение изображение = новое изображение ("https://www.countryflags.io/no/shiny/64.png");

2) Изображение image = новое изображение ("file: /Users/macbookpro/Desktop/64.png");

img1.setImage (изображение);

System.out.println (image.getWidth ());

1 Ответ

1 голос
/ 09 марта 2019

Вы пытались напечатать исключение, вызванное изображением?Вот как это выглядит:

java.io.IOException: Server returned HTTP response code: 403 for URL: http://www.countryflags.io/no/shiny/64.png

Метод getException () содержит ненулевое значение, только если для свойства error установлено значение true, и в этом случае оно содержит исключение, вызвавшее изображениезагрузка не удалась.

Для получения дополнительной информации о коде ответа 403, вы можете посмотреть по этой ссылке https://httpstatuses.com/403.

Обновление : Вы можете заставить его работать, имитируяполучить доступ к URL-адресу через браузер, например Firefox, следующим образом:

String imgUrl = "https://www.countryflags.io/no/shiny/64.png";
URLConnection connection = new URL(imgUrl).openConnection();
connection.addRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0");
Image image = new Image(connection.getInputStream());

Таким образом, вы сможете загрузить изображение, и, фактически, image.isError () вернет false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...