내가 서버 -오류 동안
{"description":"Invalid token character ',' in token \"json, application/json\"","errorCode":2000}
에서 오류 응답 아래 얻고 그러나 코드 -
HttpClient client = new DefaultHttpClient();
HttpConnectionParams.setConnectionTimeout(client.getParams(), 30000);
HttpResponse response;
try {
HttpPost post = new HttpPost(url);
StringEntity se = new StringEntity(json.toString());
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
post.setEntity(se);
post.setHeader("Accept", "application/json");
post.setHeader("Content-type", "application/json");
response = client.execute(post);
} catch (Exception e) {
Log.e("Client", "sendJson", e);
}
이하로 사용하여 JSON 객체를
{"venue":"places, US"}
를 게시하려고 서버에서 오는 오류의 원인은 무엇입니까? 서버 측의 헤더 설정 때문이거나 위에 붙여 넣은 요청 코드에 문제가 있습니다.
편집 : 이 오류는 콘텐츠 유형 설정이 2 번인 것으로 보입니다. 아래 라인을 제거한 후
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
오류가 사라졌습니다.
위의 줄 대신 아래 줄만 제거하면 오류가 제거되지 않습니다.
post.setHeader("Content-type", "application/json");
첫 번째 줄만 제거하면 두 번째 오류가 제거되는 이유는 둘 다 콘텐츠 유형을 설정하기 때문입니다.
또한이 코드를 다른 프로젝트의 두 줄에 모두 사용했으며 오류없이 그대로 사용했습니다. 그것은 서버 측 문제와 같은데, 서버의 어떤 설정으로 인해이 문제가 발생했을 수 있습니다.
덕분에
post.setHeader("Content-type", "application/json");
라인을 제거
답장을 보내 주셔서 감사합니다. post.setHeader ("Content-type", "application/json") 제거; didnt는 일한다. 하지만이 줄을 제거하면 se.setContentEncoding (새 BasicHeader (HTTP.CONTENT_TYPE, "application/json"))); 그것은 작동하고 서버에서 예상 응답을 얻었다. 그 이유는 무엇일까요? 도움을 주셔서 다시 한번 감사드립니다. – anujprashar