Как создать крошечный URL без вызова внешнего API (Java)
Мне нужно хранить URL в QSLITE. Я прочитал tinyURL сокращает URL-адрес, но это требует вызова API для -
http://tinyurl.com/api-create.php
Я также читал, что - "Сокращение URL-адресов служб API Google" также используется для той же цели, но не получил никакого рабочего примера для этого.
Мой запрос: могу ли я получить сокращенный URL/ крошечный URL, не совершая внешних звонков? Есть ли баночка, которую я могу использовать?
2 ответа
Вы, кажется, не понимаете, как работают tinyurl и подобные сервисы. Не существует "эквивалентного короткого URL" для любого другого длинного URL. То, как работает tinyurl, заключается в том, что они генерируют крошечный уникальный идентификатор для длинного URL, который вы отправляете API, и сохраняют эту связь в своей базе данных:
12345 -> http://www.foo.com/very/long/url
Затем, когда вы идете в tinyurl.com/12345
они получают URL-адрес, связанный с идентификатором 12345, и перенаправляют на этот URL-адрес.
Так что, если вы хотите запомнить внешние URL-адреса, теперь есть другой способ, чем хранить их как есть, или сделать API-вызов tinyurl, чтобы они генерировали короткий URL-адрес для этого URL-адреса. Простая библиотека Java не может здесь помочь. Оригинальный длинный URL должен где-то храниться.
Можно создать короткий URL. Но прежде чем вы сможете использовать его, вы должны воссоздать длинный URL из короткого. Невозможно использовать что-то вроде tinyurl без вызова API.
Проверьте это руководство, чтобы увидеть, как:
http://rocky-says.blogspot.nl/2010/04/java-code-url-shortener.html
Надеюсь это поможет.