Linux 下传输文件报错?

这是报错日志,发送一个文件到目标端。之前一直都可以,但是今天一样的程序却发送失败了,求解答。
代码如下:
package com.guoxi;

import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
/
  created by hangli
 
/
public class SendFile {
    public static void main(String[] args){
        try{
            /

             发送序号(序号比编号少1)
            
/
            int order = 30 ;
            URL startseries = new URL("http://172.28.165.229:8080/startReceive?seri="+order);
            InputStream start = startseries.openStream();
            InputStreamReader st = new InputStreamReader(start);
            BufferedReader bustart = new BufferedReader(st);
            bustart.close();
            st.close();
            start.close();
            /*
            
发送文件
             */
            String boundary = "Boundary-b1ed-4060-99b9-fca7ff59c113"; //Could be any string
            String Enter = "rn";
            File file = new File("/home/admin/demo/hangli/filename31_31.txt");
            FileInputStream fis = new FileInputStream(file);
            URL url = new URL("http://172.28.165.229:8080/uploadimg");
            HttpURLConnection conn = (HttpURLConnection)url.openConnection();
            conn.setDoOutput(true);
            conn.setDoInput(true);
            conn.setRequestMethod("POST");
            conn.setUseCaches(false);
            conn.setInstanceFollowRedirects(true);
            conn.setRequestProperty("Content-Type","multipart/form-data;boundary=" + boundary);
            conn.connect();
            DataOutputStream dos = new DataOutputStream(conn.getOutputStream());
            //part 1
            String part1 =  "--" + boundary + Enter
                    + "Content-Type: application/octet-stream" + Enter
                    + "Content-Disposition: form-data; filename=\""+file.getName()+"\"; name=\"file\"" + Enter + Enter;
            //part 2
            String part2 = Enter
                    + "--" + boundary + Enter
                    + "Content-Type: text/plain" + Enter
                    + "Content-Disposition: form-data; name=\"dataFormat\"" + Enter + Enter
                    + "hk" + Enter
                    + "--" + boundary + "--";
            byte[] xmlBytes = new byte[fis.available()];
            fis.read(xmlBytes);
            dos.writeBytes(part1);
            dos.write(xmlBytes);
            dos.writeBytes(part2);
            dos.flush();
            dos.close();
            fis.close();
            System.out.println("status code: "+conn.getResponseCode());
            conn.disconnect();
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}

2回答

achliceachlice  系统工程师 , h3c
yinxinzhuhaiqiang赞同了此回答
看下目标端 程序 及端口是不是出问题了. 你的目标端是   主机172.28.165.229的 8080 ? 在你本地 telnet 测试连接目标的 8080 , 或者ssh指定目标端口 测试连接, 看对端8080是否正常.显示全部

看下目标端 程序 及端口是不是出问题了. 
你的目标端是   主机172.28.165.229的 8080 ?

在你本地 telnet 测试连接目标的 8080 , 或者ssh指定目标端口 测试连接, 看对端8080是否正常.

收起
 2019-10-24
  • 是的呢,是这个目标端ip确实是这个172.28.165.229:8080,我测试了我可以连接到目标端得8080,我感觉可能是我自己的8080端口没有打开
    2019-10-25
  • 理念上上,你自己做为客户端去连接目标的 8080, 与你自己的8080没关系 , 客户端的端口一般是由系统自由分配 的.不要用代码, 手动做一个访问目标的上传测试看是否能成功
    2019-10-28
王巧雷王巧雷  系统工程师 , sino-bridge
报错比较明显,连接被拒绝。 1. 查看对端的服务是否启动,netstat查看8080是否处在监听状态 2. 检查客户端到服务端之间的网络是否有防火墙,用telnet或nc去测试即可显示全部

报错比较明显,连接被拒绝。

1. 查看对端的服务是否启动,netstat查看8080是否处在监听状态

2. 检查客户端到服务端之间的网络是否有防火墙,用telnet或nc去测试即可

收起
 2019-10-28
浏览588

提问者

我是限量版软件开发工程师, NXY
相关推广
  • 2020 容器云职业技能大赛运维岗课程系列之—容器云平台的日常故障处理
    近年来,容器技术的发展也非常迅猛,以docker和kubernetes为代表的容器技术日新月异,但我们也在容器的使用过程中碰到各种困扰和难题。本文针对Docker容器和kubernetes集群安装,部署,维护过程中,产生的问题和故障,做出有针对性的说明和解决方案,希望可以帮助到大家去快速定位和解决类似问题故障。
  • 核心数据库服务器选型优先顺序调查

    发表您的选型观点,参与即得50金币。

    问题状态

  • 发布时间:2019-10-24
  • 关注会员:3 人
  • 问题浏览:2552
  • 最近回答:2019-10-28