将JSON发送到服务器

时间:2011-01-14 03:26:43

标签: android json httpurlconnection

我正在运行以下Java,一个带有JSON数据的HttpURLConnection PUT请求,该请求将从Android设备发送。在这个工作之后我会处理任何引发的异常。 GET工作正常。

Authenticator.setDefault(new Authenticator() {
            protected PasswordAuthentication getPasswordAuthentication() {
               return new PasswordAuthentication(nameString, pwdString.toCharArray());
               }
        });

url = new URL(myURLString);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();

urlConnection.setDoOutput(true);
urlConnection.setChunkedStreamingMode(0);

urlConnection.setRequestMethod("PUT");
urlConnection.setRequestProperty("Content-Type", "application/json");

OutputStream output = null;
try {
  output = urlConnection.getOutputStream();
  output.write(jsonArray.toString().getBytes());
} finally {
  if (output != null) { output.close(); }
}

int status = ((HttpURLConnection) urlConnection).getResponseCode();
System.out.println("" + status);

urlConnection.disconnect();

我收到HTTP 500错误(内部错误代码),意外的属性阻止了请求。 JSONArray包含我知道的密钥正确的JSONObjects。服务器非常标准,并且期望HTTP PUT具有JSON主体。

我错过了什么吗?

0 个答案:

没有答案