2010-10-01 1 views
0

У меня есть URL-адрес, введенный пользователями.Проверка URI, ниже перенаправления. Веб-приложение: Сервлеты Java

Пользователь может ввести URI. [относительный URI]

Как я могу проверить этот относительный URI?

EX: для абсолютного URI https://stackoverflow.com/questions/ask.

Пользователь может ввести "вопросы/задать вопрос".

Есть ли какие-либо способы чтения web.xml для проверки URI [веб-приложение Java]

+1

проверить его в каком смысле? Что он существует? Что это хорошо сформированный (но возможно несуществующий) URI? – GaryF

+0

Да .. Я хочу добавить HTTP-протокол, если он отсутствует в URL-адресах ввода пользователя. но мне нужно исключить reuri из добавления http, поскольку относительный uri будет ломаться, если http appended – user464009

ответ

2
  • , если вы можете проверить, действительно ли существует адрес, вы можете использовать:.

    HttpURLConnection connection = 
        (HttpURLConnection) new URL(host + relativePart).openConnection(); 
    
    
    int status = connection.getResponseCode(); 
    

и посмотреть, будет ли возвращен статус 200.

  • если вы хотите проверить, если URI хорошо формируется в соответствии с RFC 2396 - new URI(uri)
+0

Спасибо Bozha, за быстрый ответ. В основном я ищу логику добавления HTTP-протокола, если пользователь пропустил при вводе URL-адреса. Поскольку URL-адрес может быть относительным URI. Я хочу исключить случай URI для добавления HTTP-протокола. У меня есть 100 URL/URI для рисования на одной странице. Я буду признателен за любую эффективную логику, если вы предложите. – user464009

+0

ну, вы можете проверить с помощью 'contains (..)', добавил ли он http: //, а если нет - добавьте его. – Bozho

+0

true, но в случае относительного uri это прерывается. ex: http://stackoverflow.com/questions/ask. Пользователь может ввести "questions/ask". – user464009