我的工作模块,允许用户在WordPress的一篇博客评论上。我看了看HTML源代码后评论表格在博客条目的底部(发表评论部分)显示。使用作为参考,我把它用DefaultHTTPClientBasicNameValuePairs和我的代码看起来像翻译成Java:

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","abz@xyc.com"));
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();
}

我得到HTTP 302 Found(重定向到临时位置)与该代码日志,这是我忽略异常。 (注:通常情况下,当您发表的评论(网页),你都将返回到博客页面报名所有的意见,我在重定向获取URL是一样的。)即使忽略此重定向后,我可以在我的个人博客发表评论使用此代码,但不实际(生产)博客。

<强>问题:结果 1.难道这是一个后一个注释设置问题(或许还有原来博客的主人可能已设置)?结果 2.应该如何处理的HTTPClient 302状态码?最后,我必须通知成功和失败的用户,并没有真正把他的评论页面。

有帮助吗?

解决方案

您可以检查的gravatar,Akismet在或其他一些评论相关插件ü创建的问题。 尝试检查用海报和LiveHTTP头扩展Firefox中的输出用于调试生产网站

其他提示

假设WP-评论-post.php中存在,在生产现场必须是由任一检验为HTTP_REFERER和/或HTTP_USER_AGENT阻断WP-评论-post.php中的直接访问。检查htaccess的用于生产现场。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top