我正在尝试在客户端应用程序中执行PUT / POST以更新我的DataBase。 我正在使用HttpClient。
以下哪种方法更正确,为什么它们都不起作用?
首先: HTTP / 1.1 415不支持的媒体类型
List <NameValuePair> nvps = new ArrayList <NameValuePair>();
nvps.add(new BasicNameValuePair("Accept", "application/json"));
nvps.add(new BasicNameValuePair("Content-Type", "application/json"));
nvps.add(new BasicNameValuePair("userID", "user5"));
nvps.add(new BasicNameValuePair("FirstName", "teste"));
nvps.add(new BasicNameValuePair("LastName", "2"));
httpPost.setEntity(new UrlEncodedFormEntity(nvps));
第二: HTTP / 1.1 500内部服务器错误
httpPost.setHeader("Accept", "application/json");
httpPost.setHeader("Content-type", "application/json");
JSONObject obj = new JSONObject();
obj.put("userID", "user5");
obj.put("FirstName", "teste");
obj.put("LastName", "2");
httpPost.setEntity(new StringEntity(obj.toString(), "UTF-8"));
最后我做了:HttpResponse response = httpclient.execute(httpPost);
或许问题是网址......我有:HttpPost httpPost= new HttpPost("http://localhost:8080/LULServices/webresources/entities.user");
我想在我的用户服务(来自de DataBase的用户表)中添加一个新用户
感谢。
答案 0 :(得分:0)
我通过将第一个大写字母更改为小写来解决第二种方法的问题。真是愚蠢的错误..
它被定义为'firstName'
,我写的是在DataBase表中编写的。