Как создать крошечный 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

Надеюсь это поможет.

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