更新postgresql数据库:服务器返回HTTP响应代码:405表示URL

时间:2016-06-10 17:13:48

标签: java postgresql post

尝试使用HTTP POST请求更新数据库参数时,我得到以下结果:

Exception in thread "main" java.io.IOException: Server returned HTTP response code: 405 for URL: 
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1840)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1441)
    at istsos.IstSOS.ExecuteRequest(IstSOS.java:210)
    at istsos.Database.setDatabase(Database.java:77)
    at istsos.Database.main(Database.java:105)

我删除了网址。

无论如何,我检查了REST响应,它在应用程序中工作正常。

在IstSOS类中,ExecuteRequest方法似乎在获取响应方面存在问题:

        httpCon.setDoOutput(true);          
        httpCon.setRequestMethod(httpMethod);
        DataOutputStream wr = new DataOutputStream(httpCon.getOutputStream());
        wr.write(postDataBytes);
        wr.flush();
        wr.close();

        BufferedReader in = new BufferedReader(new InputStreamReader(httpCon.getInputStream()));

        //assigning response to JSON
        String inputLine;
        JSONObject jsonResponse = new JSONObject();

        while((inputLine = in.readLine()) != null)
            //System.out.println(inputLine);
            jsonResponse = new JSONObject(inputLine);

最后,我在Java库中使用JSON返回一个JSONObject来解析响应。

到目前为止,我已经尝试使用try / catch和System.out.print排序来查看错误,但这次我无法真正看到发生了什么。

此外,这种请求是可能的,据我所知,服务器不限制它。

1 个答案:

答案 0 :(得分:0)

最后,我解决了这个问题。很明显,很明显我无法通过这种方法更新数据库......