I am trying to send a GET via Android's HttpURLConnection
(imported from org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnection
), and upon receiving the response, an IOException is thrown:
in doRequestInternal(): "Received authentication challenge is null"
What does this error mean, and what is causing this? I am writing OAuth parameters to the Authorization header, but I do this on other occasions, too, without problems.
if (connection == null) {
connection = (HttpURLConnection) new URL(endpointUrl).openConnection();
connection.setRequestMethod("GET");
}
//... do some OAuth message signing
connection.connect();
int statusCode = connection.getResponseCode(); // throws IOException
I found out the reason.
First of all, to all who aren't aware of what this error means (I sure wasn't): This exception is thrown if the server replies with a 401. Very intuitive, considering that it was thrown in getResponseCode() (i.o.w. you are never able to check for 401s yourself, but have to catch this IOException instead...).
The actual cause for the 401 was that I didn't send an OAuth verifier code where it was expected at this point.