저는 Wordpress에 게시 된 블로그에 의견을 게시 할 수있는 모듈을 만들고 있습니다. 블로그 항목의 맨 아래에 표시된 Post-Comment-Form에 대한 HTML 소스를 보았습니다 (응답 섹션에서 나가기). 참고로 그 사용, 나는 DefaultHTTPClient
및 BasicNameValuePairs
를 사용하여 Java로 번역 내 코드는 다음과 같습니다 나는 HTTP 302 Found
을 얻을안드로이드에서 wordpress-blog에 의견을 게시하십시오.
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://xycabz.wordpress.com/wp-comments-post.php");
httppost.setHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8");
List<NameValuePair> nvps = new ArrayList<NameValuePair>();
nvps.add(new BasicNameValuePair("author","abc"));
nvps.add(new BasicNameValuePair("email","[email protected]"));
nvps.add(new BasicNameValuePair("url",""));
nvps.add(new BasicNameValuePair("comment","entiendamonos?"));
nvps.add(new BasicNameValuePair("comment_post_ID","123"));
//this was a hidden field and always set to 0
nvps.add(new BasicNameValuePair("comment_parent","0"));
try {
httppost.setEntity(new UrlEncodedFormEntity(nvps));
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
BasicResponseHandler handler = new BasicResponseHandler();
try {
Log.e("OUTPUT",httpclient.execute(httppost,handler));
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
나는 무시하고이 코드 로그에서 예외 (임시 위치로 리디렉션). (참고 : 일반적으로 (웹 페이지에서) 댓글을 올리면 모든 댓글을 올리는 블로그 페이지로 돌아갑니다. 리디렉션에 들어간 URL은 동일합니다.이 리디렉션을 무시한 후에도 이 코드를 사용하여 내 개인 블로그에 의견을 게시하지만 실제 (제작) 블로그에는 게시하지 마십시오.
질문 :이
1.이 게시물-A-주석 설정 문제 (원래 블로그 소유자가 설정 한 수 아마도 뭔가) 될 수 있을까?
2. HTTPClient가 302 상태 코드를 처리하는 방법은 무엇입니까? 결국, 사용자에게 성공과 실패를 알리고 실제로 그를 코멘트 페이지로 데려 가지 말아야합니다.
주석을 게시하려고 할 때 프로덕션 로그에서 일어나는 일을 게시하는 것이 유용 할 것입니다. 전혀 오류가 있습니까? 댓글을 올바르게 게시하는 것처럼 보이지만 댓글이 표시되지 않습니다. – synic
로그에 HttpResponseException : Found (HTTP 302 상태 코드)가 표시됩니다. IMO는 정상이지만 주석은 프로덕션 로그에 표시되지 않습니다. – Samuh