一个有关HTTP协议的底层技术性问题(高分相送)

来源:互联网  时间:2016/7/18 21:58:50

关于网友提出的“ 一个有关HTTP协议的底层技术性问题(高分相送)”问题疑问,本网通过在网上对“ 一个有关HTTP协议的底层技术性问题(高分相送)”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 一个有关HTTP协议的底层技术性问题(高分相送)
描述:

各位熟悉网络编程的朋友,一个有关HTTP的方法问题使我百思不得其解,HTTP1.1的方法中,CONNECT是针对代理服务器建立连接的一个方法,但我使用了这个方法,却得到以下的问题:
ClientSocket1的属性设置为Address为代理服务器地址,ClientType为ctBlooking,Port为8080.
1. 我使用方法为:
var
  vText: String;
  buf: array[0..1023] of Char;
begin
  ClientSocket1.Open;
  vText := 'CONNECT www.163.com:80 HTTP/1.1\r\n\r\n';
  ClientSocket1.Socket.SendBuf(Pointer(vText)^, Length(Text));
  ClientSocket1.Socket.ReceiveBuf( buf, SizeOf(buf));
.....
end;
但最后代理服务器响应回来的内容可空的。
2. 我使用了另一种做法:
var
  vText: String;
  buf: array[0..1023] of Char;
begin
  ClientSocket1.Open;
  vText := 'CONNECT www.163.com:80 HTTP/1.1';
  ClientSocket1.Socket.SendBuf(Pointer(vText)^, Length(Text));
  vText := #13#10#13#10;
  ClientSocket1.Socket.SendBuf(Pointer(vText)^, Length(Text));
  ClientSocket1.Socket.ReceiveBuf( buf, SizeOf(buf));
.....
end;
用了这种做法,代理用务器回复的错误码却是400,以下是回复的内容:
HTTP/1.1 400 Bad Request ( The data is invalid.  )
Via:1.1 TL_ODC
Connection: close
Proxy-Connection: close
Pragma: no-cache
Cache-Control: no-cache
Content-Type: text/html
Content-Length: 3671  

The page cannot be displayed

上一篇sql server 的SA用户密码的问题?
下一篇如何把jpg 文件设成桌面
明星图片
相关文章

《 一个有关HTTP协议的底层技术性问题(高分相送)》由码蚁之家搜集整理于网络,
联系邮箱:mxgf168#qq.com(#改为@)