Как определить тип запроса URL в Java?

Я разрабатываю приложение для Android для определенного использования, и это приложение использует веб-просмотр для загрузки URL-адресов. Мне нужно определить тип запроса URL, т.е. если это тип запроса GET, POST или DELETE. Я пытался использовать getMethod в Java, но не очень уверен, как его использовать, так как я новичок в Java.

Спасибо!

1 ответ

Решение

URL не имеют типов. HTTP-запросы к URL, хотя и делают. В этом ответе я предполагаю, что это то, о чем вы говорите.

В стандартной JRE вы делаете HTTP-запросы, используя URLConnection. Если вы знаете, что делаете HTTP-запрос с помощью URL # openConnection (), вы можете преобразовать результат этого метода в http://docs.oracle.com/javase/7/docs/api/java/net/HttpURLConnection.html. Это метод getRequestMethod(), который даст вам тип метода HTTP-запроса.

Например:

URL url=new URL("http://www.google.com/");
HttpURLConnection cn=(HttpURLConnection) url.openConnection();

// Configure URLConnection here...
cn.setRequestMethod("POST");            // Use a POST request
cn.setDoOutput(true);                   // We'll send a request body
OutputStream body=cn.getOutputStream(); // Send our output...
try {
    // Do output...
}
finally {
    body.close();
}
InputStream response=cn.getInputStream();
try {
    // Get our request method
    String requestMethod=cn.getRequestMethod();            // POST
    Map<String,List<String>> headers=cn.getHeaderFields(); // Check other response headers

    // Handle input...
}
finally {
    response.close();
}
Другие вопросы по тегам