Wykonywanie żądania PUT z danymi JSON przy użyciu HttpURLConnection nie działa
Usiłuję utworzyć żądanie PUT za pomocą danych JSONHttpURLConnection
w Javie. Sposób, w jaki to robię, nie działa. Nie mam błędów, więc nie wiem, na czym polega problem.
public static void main(String[] args) {
URL url;
try {
url = new URL("http://fltspc.itu.dk/widget/515318fe17450f312b00153d/");
HttpURLConnection hurl = (HttpURLConnection) url.openConnection();
hurl.setRequestMethod("PUT");
hurl.setDoOutput(true);
hurl.setRequestProperty("Content-Type", "application/json");
hurl.setRequestProperty("Accept", "application/json");
String payload = "{'pos':{'left':45,'top':45}}";
OutputStreamWriter osw = new OutputStreamWriter(hurl.getOutputStream());
osw.write(payload);
osw.flush();
osw.close();
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
A oto prośba, którą próbuję zrobić:
Już wysyłałem żądania GET do zasobu w tej samej aplikacji i działało to dobrze. Byłbym bardzo wdzięczny za wszystkie wskazówki, jak mogę to debugować lub jak mogę to zrobić w inny sposób. Do tej pory próbowałem tylko używaćOutputStream
zamiastOutputStreamWriter
ale to nie działa.