目的:客户端用socket连接web服务器发送http请求,访问一个Servlet /service .并接收servlet的相应数据。
我客户端代码可以访问到servlet可是servlet用request.getPrameter(“data”) 取不到请求内容.
请指点:代码如下

java代码:
  1. public class Client {
  2. public static void main(String[] arg) {
  3. Socket socket;
  4. try {
  5. socket = new Socket(“10.20.64.203″, 7001);
  6. OutputStream os = socket.getOutputStream();
  7. InputStream ins = socket.getInputStream();
  8. String data= getXmlString();
  9. StringBuffer sb = new StringBuffer();
  10. sb.append(“POST /service HTTP/1.1\r\n”);// 注意\r\n为回车换行
  11. sb.append(“Accept-Language: zh-cn\r\n”);
  12. sb.append(“Connection: Keep-Alive\r\n”);
  13. sb.append(“Host:localhost\r\n”);
  14. sb.append(“Content-Length:11\r\n”);
  15. sb.append(“\r\n”);
  16. sb.append(“data=abc\r\n”);
  17. sb.append(“\r\n”);

  18. // 接收Web服务器返回HTTP响应包
  19. os.write(sb.toString().getBytes());
  20. os.flush();
  21. byte[] b = new byte[1000];
  22. ins.read(b); //读取http头
  23. InputStreamReader ireader = new InputStreamReader(ins);
  24. java.io.BufferedReader reader = new java.io.BufferedReader(ireader);
  25. String s = reader.readLine(); //读取内容
  26. System.out.println(“response:”+s);
  27. System.out.println(reader.readLine());
  28. System.out.println(reader.readLine());
  29. System.out.println(reader.readLine());
  30. System.out.println(reader.readLine());
  31. System.out.println(reader.readLine());
  32. System.out.println(reader.readLine());

  33. } catch (UnknownHostException e) {
  34. e.printStackTrace();
  35. } catch (IOException e) {
  36. e.printStackTrace();
  37. }
  38. }
复制代码

更多相关文章

  1. 仿QQ设置字体大小自定义SeekBar
  2. Android支持AMDGPU显卡
  3. OkHttpClient加载图片给DisposableObserver,CompositeDisposable
  4. 解决“Cannot merge new index 67208 into a non-jumbo instruct
  5. android BroadcastReceiver相关
  6. android实现桌面icon未读信息图标(类似与iPhone的badge)
  7. Android中Activity布局及其加载
  8. Android的sdk下载问题
  9. Android中半透明Activity效果另法

随机推荐

  1. android 网络开发
  2. 基于 Android(安卓)NDK 的学习之旅-----
  3. Android(安卓)为联系人添加图片
  4. android组建属性及使用许可
  5. Android之ShortCut[Broadcast方式]
  6. 去除或替换listview 默认的点击选中时的
  7. Android基本组件TextView和EditView
  8. Android(安卓)中使用OpenGL ES进行2D开发
  9. Android中文翻译组 - 简介
  10. FFmpeg在Android上的移植之第一步