java socket怎么获取端口心跳包数据?

1、返回400

``` public static synchronized String tcpPost(String clientIp,String clientPort,String msg){
String rs = "";

    if(clientIp==null||"".equals(clientIp)||clientPort==null||"".equals(clientPort)){
        logger.error("Ip或端口不存在...");
        return null;
    }

    int clientPortInt = Integer.parseInt(clientPort);

    logger.info("clientIp:"+clientIp+" clientPort:"+clientPort);

    Socket s = null;
    OutputStream out = null;
    InputStream in = null;
    try {
        s = new Socket(clientIp, clientPortInt);
        s.setSendBufferSize(4096);
        s.setTcpNoDelay(true);
        s.setSoTimeout(60*1000);
        s.setKeepAlive(true);
        out = s.getOutputStream();
        in = s.getInputStream();

        //准备报文msg
        logger.info("准备发送报文:"+msg);

        out.write(msg.getBytes("GBK"));
        out.flush();

        byte[] rsByte = readStream(in);

        if(rsByte!=null){
            rs = new String(rsByte, "GBK");
        }


    } catch (Exception e) {
        logger.error("tcpPost发送请求异常:"+e.getMessage());
    }finally{
        logger.info("tcpPost(rs):"+rs);