还是 httpclient 的问题 为什么我的HTTP 状态码一直是200

assertme_163_com 2008-11-28 10:57:28

public static void main(String[] args)throws Exception {
HttpClient httpClient = new HttpClient();

String url = "http://www.newsmth.net/bbslogin2.php";

PostMethod postMethod = new PostMethod(url);

postMethod.setFollowRedirects(false);

// 填入各个表单域的值
NameValuePair[] data = { new NameValuePair("id", "dutym"),
new NameValuePair("passwd", "assertme") };
// 将表单的值放入postMethod中
postMethod.setRequestBody(data);
// 执行postMethod

int statusCode = httpClient.executeMethod(postMethod);
// HttpClient对于要求接受后继服务的请求,象POST和PUT等不能自动处理转发
// 301或者302


System.out.println(statusCode);
System.out.println(postMethod.getStatusLine().toString() + "=======" + postMethod.getStatusCode());
System.out.println(HttpStatus.SC_MOVED_PERMANENTLY);

if (statusCode == HttpStatus.SC_MOVED_PERMANENTLY ||
statusCode == HttpStatus.SC_MOVED_TEMPORARILY) {
// 从头中取出转向的地址
Header locationHeader = postMethod.getResponseHeader("location");
String location = null;
if (locationHeader != null) {
location = locationHeader.getValue();
System.out.println("The page was redirected to:" + location);
} else {
System.err.println("Location field value is null.");
}
return;
}

}
...全文
606 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
assertme_163_com 2008-11-28
  • 打赏
  • 举报
回复
没有错误,int statusCode = httpClient.executeMethod(postMethod);

statusCode 的值一直是200 但要实现转向的话它的值应该是301、302 或其他才行,我
zjcxy3150 2008-11-28
  • 打赏
  • 举报
回复
把你报的错误提示写出来啊,不看怎么知道哪里错了呢
assertme_163_com 2008-11-28
  • 打赏
  • 举报
回复
没有高手帮帮忙吗?

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧