Отправлять данные, содержащие "/" с URL-адресом в Android

Я использую веб-сервисы для вставки данных в базу данных MySQL. У меня есть данные String, которые содержат путь к изображению, например https://i.imgur.com/fmccR.jpg. И я использую библиотеку LoopJ для выполнения этой задачи.

String pic = "https://i.imgur.com/fmccR.jpg";
client.get("http://0.0.0.0:8080/WebService/rest/insert/data/"+username+'/'+code+'/'+pic+

Когда я запускаю это, он дает эту ошибку. 404 , Not Found. Наконец я нашел ошибку. То есть Image URL содержит "/". Когда я удаляю этот "/", он работал нормально и вставлял данные.

So How can I send the full Image URL with (With "/") this URL.

Вы хотите удалить "/" из строки ??

Venky 24.04.2018 12:24

Нет, мне нужно отправить полный URL-адрес https://i.imgur.com/fmccR.jpg с этим URL-адресом службы. / - проблема в том, что этот String не вставлен в базу данных. Но мне нужно знать, как отправить этот полный URL-адрес изображения в базу данных.

user9569492 24.04.2018 12:26
0
2
45
1

Ответы 1

Вы должны кодировать URL-адрес при отправке на сервер и, как показано ниже

String pic = URLEncoder.encode("https://i.imgur.com/fmccR.jpg", "utf-8");

А затем на сервере вам нужно декодировать обратно в фактическом виде в соответствии с языком, который вы используете в веб-сервисе, например

В Java

String result = java.net.URLDecoder.decode(url, "UTF-8");

В PHP

utf8_decode(urldecode(url));

и в C#

Server.UrlDecode(url)

Я не могу кодировать и отправлять, потому что у меня есть другие приложения, которые получают данные из этой базы данных. Поэтому я не могу изменить их, чтобы декодировать и получить Image. Есть ли возможность отправить это изображение?

user9569492 24.04.2018 17:54

это для отправки на сервер, вы можете сохранить точный URL-адрес после декодирования, чтобы другое приложение могло получать точные URL-адреса

rana_sadam 25.04.2018 09:47

Другие вопросы по теме