我现在想用HttpURLConnection传一个参数到服务端,
服务端通过request.getparameter("param")来获取到这个参数但是,不能把参数放在URL后面:比如http://xxxx?param=aaaaa,不能这样传参看网上的例子,用post传参,是把参数放在正文里面
        String content = " param= "    
               + URLEncoder.encode(" a fat man ", " utf-8 ");    
        // DataOutputStream.writeBytes将字符串中的16位的 unicode字符以8位的字符形式写道流里面     
        out.writeBytes(content); 但是,我的content要传的是一个xml文件流。        Writer writer = new OutputStreamWriter(out);
        // 发送soap消息到指定地址
        
        writer.write(soapMsg); //soapMsg是xml文件内容请问:在客户端如何写,才能把这个参数传到服务端,并用request.getparameter获取到呢?

解决方案 »

  1.   

    不是通过页面提交,客户端就一个java类文件来发送请求信息
      

  2.   

    用HttpClient来模拟浏览器客户端PostMethod method  = new PostMethod("http://www.c2000.cn/reg.asp?action=save");
    method.setParameter("name_c", username);
    method.setParameter("codestr", codestr);
    method.setParameter("RegAnswer", "11");
      

  3.   

    會存在一個針對此連接對象或其關聯對象的一個setter,getter方法
    比如getRequestPropertyhttp://www.cnblogs.com/linjiqin/archive/2011/09/19/2181634.html
      

  4.   


    我这个客户端是发送的soap消息,是用httpclient代替HttpURLConnection吗?
    能不能详细说一下
      

  5.   


    这篇文章里,
    1、向服务器发送get请求 这个是可以实现,但是我不想用get请求2、向服务器发送post请求
    outStream.write(data);
    我的代码里,这个data是一个xml文件,这个该怎么搞?
      

  6.   

    用HttpURLConnection传一个参数到服务端,那么我请问,这个服务器是自己的吗?并不是必须要用post!用这个都是获取别人服务器上的数据,此时就看别人是要求get还是post!
      

  7.   

    我这边是服务端,要求用post方式,我现在要给客户端提供发送请求的实现代码,实现代码里面要传2个参数与一个xml文件,现在通过get方式客户获取到这两个参数(就是直接在url后面写),但用post不知道该怎么传
      

  8.   

    把xml文件转换成字节流的形式,再和普通参数一样传参咯。
      

  9.   

    如果你是用write傳,那就用相應的read接
    如果想要用getter方法接,那試試把這個xml內容作為參數值寫入并傳遞
      

  10.   

    urlConn.setRequestMethod("POST");这个要设成post同时还要设置如下三个:
    urlConn.setDoOutput(true);urlConn.setDoInput(true);urlConn.setUseCaches(false);
    post发送如下:
    DataOutputStream out = new DataOutputStream(urlConn.getOutputStream());
    // 正文,正文内容其实跟get的URL中'?'后的参数字符串一致
    String content = "firstname=" + URLEncoder.encode("中国共产党", "utf-8");
    out.writeBytes(content); 
    out.flush();
    out.close();