2
나는 HttpPost
요청을 보내려고하고, 그리고 내가 이해에서이 작업을 수행하려면 다음을 수행하십시오변경의 NameValuePair separater ':'
HttpClient httpClient = new DefaultHttpClient();
HttpPost post = new HttpPost(uri[0]);
try {
List<NameValuePair> nvp = new ArrayList<NameValuePair>();
nvp.add(new BasicNameValuePair("{\"UserName\"", "\"michigan\""));
nvp.add(new BasicNameValuePair("\"Password\"", "\"fanaddicts\""));
nvp.add(new BasicNameValuePair("\"DeviceHarwareId\"", "\"NW58xfxz/w+jCiI3E592degUCL4=\""));
nvp.add(new BasicNameValuePair("\"DeviceTypeId\"", "\"1\"}"));
post.setEntity(new UrlEncodedFormEntity(nvp));
response = httpClient.execute(post);
Log.i("Feed Response", "Feed: " + response.getStatusLine().getStatusCode());
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
나는 데 문제를 기업은 다음과 같습니다이다 :
[{"UserName"="michigan", "Password"="fanaddicts", "DeviceHarwareId"="NW58xfxz/w+jCiI3E592degUCL4=", "DeviceTypeId"="1}]
하지만 인해 서버가 설정되는 방식으로, 내가 같이 할 필요
:[{"UserName":"michigan", "Password":"fanaddicts", "DeviceHarwareId":"NW58xfxz/w+jCiI3E592degUCL4=", "DeviceTypeId":"1}]
등호 (=) 기호 대신 키/값 쌍을 구분하는 콜론 (:)이 있습니다.
내 질문은 : 어떻게 수정합니까?
UrlEncodedFormEntity 대신 [JSONObject] (http://developer.android.com/reference/org/json/JSONObject.html) 사용을 고려하십시오. URL 인코딩 된 문자열이 아닌 JSON 문자열을 원하는 것처럼 보일 수 있습니다. – jedwards
@ jedwards : 이것을 답으로 쓰지 않는 이유는 무엇입니까? – gunar
@jedwards 귀하의 의견을 대답하고 받아 들일 것입니다. 그것은 효과가 있었다. 좋은 생각이야. 감사. – BlackHatSamurai