【发布时间】:2015-06-17 19:36:12
【问题描述】:
如何用android访问路由器ip?
HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("http://192.168.195.1:80");
Log.d("test",post.toString());
try {
HttpResponse response = client.execute(post);
Log.d("test",response.toString());
BufferedReader reader = new BufferedReader(
new InputStreamReader(response.getEntity().getContent()));
String line="";
while((line=reader.readLine())!=null){
Log.d("test", line);
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
我正在尝试使用此代码,但我在日志中收到连接被拒绝错误消息。我认为这是由于路由器身份验证。如何访问路由器?
【问题讨论】:
-
你在做什么?因为 192.168.195.1 是你的网关?你为什么要发帖?无论如何,您收到此消息是因为您的路由器可能使用带有会话 id 的会话 cookie,并且大多数路由器拒绝端口 80 上的 http post...您应该尝试使用 get。
-
我正在尝试访问路由器。你的意思是我应该使用 HttpGet 而不是 HttpPost?我尝试使用端口 80,因为当我尝试使用网络浏览器访问时,路由器正在使用端口 80。
-
是的,但是在尝试使用 GET 发布任何命令之前,您必须打开一个会话...例如我在华为路由器上工作,首先我打开路由器页面以获取 cookie(使用 loopj作为库,因为它支持 cookie)然后我解析会话 ID(在 http 响应中)以执行下一个 HTTP CALL。主要问题是路由器不同,你必须检查你的路由器是如何工作的。我可以给你看我的代码,但是不同的路由器需要不同的代码
-
感谢您的回复。如果您向我展示您的代码,将会很有帮助。谢谢。
-
您可能正在寻找默认网关stackoverflow.com/a/5391763/2413303
标签: java android httpclient router