Muut HTTP-vastaukset ja lähdeviitteitä

Kaikki HTTP-vastaukset eivät ole ns. hyväksyviä (OK) vastauksia, vaan voivat sisältää kehotuksia siirtyä toiselle sivulle tai muuhun toiseen resurssiin, edellyttää tunnistautumista tai ehdottomasti hylätä pyynnön. Käytetään edellisessä artikkelissa esiteltyä WebSocketTest-ohjelmaa tämän demonstroimiseen.

Jos yritetään hakea olematonta resurssia tyyliin:

$ java WebSocketTest www.mikkonummelin.fi 80 /ei-palvelua

saadaan vastaukseksi:

HTTP/1.1 404 Not Found
Date: Sun, 02 Mar 2014 16:57:23 GMT
Server: Apache/2.2
Vary: Accept-Encoding
Content-Length: 283
Content-Type: text/html; charset=iso-8859-1

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL /ei-palvelua was not found on this server.</p>
<hr>
<address>Apache/2.2 Server at www.mikkonummelin.fi Port 80</address>
</body></html>

Paluukoodi oli siis hylkäävä 404 (Not Found) ja paluuviesti sovelluspalvelimelle (Apachelle) ominainen virhesivu. Jos vastaavasti yritetään hakea sivuston pääsivua:

$ java WebSocketTest www.mikkonummelin.fi 80 /

tulee vastaukseksi ns. uudelleenohjaus

HTTP/1.1 302 Moved Temporarily
Date: Sun, 02 Mar 2014 16:59:23 GMT
Server: Apache/2.2
X-Powered-By: PHP/5.4.4-14+deb7u7
Location: wordpress
Vary: Accept-Encoding
Content-Length: 0
Content-Type: text/html

sivuston alla olevaan WordPress-sivustoon. Kaikki HTTP/1.1-standardin mukaiset pyynnöt ja vastaukset on määritelty seuraavassa dokumentissa:

http://www.w3.org/Protocols/rfc2616/rfc2616.html

Java-kielen määrittelyt ja kääntäjät löytyvät tätä kirjoittaessa Oraclen sivustolta:

http://www.oracle.com/technetwork/java/javase/downloads/index.html