u011624903
真的想睡马银霜
采纳率33.3%
2018-01-25 16:10

JAVA在云服务器上发送http请求报错,跪求大神,小弟熬夜加班不容易啊

5
  • java

各位大神,现在都12点了,小弟这个问题无法解决了,我的java代码,

      URL realUrl = new URL(“http://119.6.7.240/admin/command/control.do”);
        URLConnection conn = realUrl.openConnection();
        conn.setDoOutput(true);
        conn.setDoInput(true);

        try (OutputStream out = conn.getOutputStream();){
              OutputStream buffer = new BufferedOutputStream(out);
                OutputStreamWriter writer = new OutputStreamWriter(buffer, "utf8");) {
              writer.write(bodyStr);
              writer.flush();
              writer.close();
        }

以上这段代码,在我本地完美运行,可是一放到云服务器上,conn.getOutputStream()这句代码就报错,报Connection timed out错误,这是为什么呢,我没有改变任何代码,放到服务器上就报错,这是为啥啊??跪求JAVA大神啊

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

21条回答

  • danmimi danmimi 3年前

    你这个ip是公网ip,在本地能访问到,但是部署到阿里云的内网环境 访问不到,是做外网映射的时候配置问题

    点赞 1 评论 复制链接分享
  • qq_23725929 一条大花龙 3年前

    首先你得确定网络连接没问题吧?
    还有端口占用 资源占用之类的
    连接超时,检查下ip你能ping通吗?然后看公网服务器是不是禁用了一些端口,看是不是把80,8080禁用了,或者是否是你本地防火墙的原因?!
    timeout是超时,检查下你的ip是否能访问到,这个是公有ip么?我试验了下,在我这里是不能访问的。这个服务器是你控制的么?有没有80端口映射,是否连上了网?
    这个服务器如果是云服务器的话,找他们的技术帮你看下。阿里云的话,是24小时工作的,你现在也可以找他们。
    如果这个服务器不是你控制的,并且你连不上,那就是服务器的问题了。

    点赞 1 评论 复制链接分享
  • huaairen 不安分的猿人 3年前

    连接超时,检查下ip你能ping通吗?然后看公网服务器是不是禁用了一些端口,看是不是把80,8080禁用了,或者是否是你本地防火墙的原因?!

    点赞 1 评论 复制链接分享
  • fuxiaodong123 fuxiaodong123 3年前

    除了ip还有端口是否正确,最好telnet

    点赞 评论 复制链接分享
  • AinUser AinUser 3年前

    方案一:ping一下该主机
    方案二:调大超时时间

    点赞 评论 复制链接分享
  • qq_24287655 qq_24287655 3年前

    ping一下服务器试试

    点赞 评论 复制链接分享
  • q1298252589 coding4all 3年前

    119.6.7.240 这个ip是你们服务器的内网ip吧,阿里云怎么能访问你们的内网ip呢

    点赞 评论 复制链接分享
  • smnzg smnzg 3年前

    IP问题
    放到公网上最好使用域名,内网IP在公网上是无法访问到的

    点赞 评论 复制链接分享
  • kongkongxiaofeiji kongkongxiaofeiji 3年前

    检查ip间是否ping的通

    点赞 评论 复制链接分享
  • yangmaolinpl sadyYang 3年前

    先直接在电脑上访问下,看能否访问。或者把超时时间延长下。

    点赞 评论 复制链接分享
  • fhx_123456 fhx_123456 3年前

    貌似都ping不通服务器地址,检查ip

    点赞 评论 复制链接分享
  • qq_35963824 qq_35963824 3年前

    如果是阿里云服务器的话要填内网ip也就是局域网Ip 他会自动映射成外网ip

    点赞 评论 复制链接分享
  • chen_pt 小码哥cc 3年前

    服务器访问不了这个ip

    点赞 评论 复制链接分享
  • qq_37415065 qq_37415065 3年前

    你检查一下Ip地址是否正确,应该是连接超时了

    点赞 评论 复制链接分享
  • qq_35107134 qq_35107134 3年前

    在你的云服务器上ping这个Ip,可以的话,在看端口。最后建议最好用域名访问,

    点赞 评论 复制链接分享
  • qq_34287165 汤圆子不加糖 3年前

    ip问题,测试一下连接是否通

    点赞 评论 复制链接分享
  • qq_39479067 Tanjson 3年前

    最大的可能性就是端口问题。

    点赞 评论 复制链接分享
  • qq_35702591 小肥猪。 3年前

    看你的url地址没写默认端口号,那么默认端口就是80端口,确认一下你云服务器web项目是否用的80端口,如果不是请在url里加入响应端口号

    点赞 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 3年前

    timeout是超时,检查下你的ip是否能访问到,这个是公有ip么?我试验了下,在我这里是不能访问的。这个服务器是你控制的么?有没有80端口映射,是否连上了网?
    这个服务器如果是云服务器的话,找他们的技术帮你看下。阿里云的话,是24小时工作的,你现在也可以找他们。
    如果这个服务器不是你控制的,并且你连不上,那就是服务器的问题了。

    点赞 评论 复制链接分享
  • HELLOMRP 程序员小软 3年前

    首先你得确定网络连接没问题吧?
    还有端口占用 资源占用之类的

    点赞 评论 复制链接分享
  • u013769320 爪哇布道 1年前

    问个题外话,为什么访问http接口不用httpclient等封装好的呢? 要自己通过URLConnection来访问?

    点赞 评论 复制链接分享

相关推荐