当前位置: 首页 > 面试题库 >

使用套接字创建原始HTTP请求

宣滨海
2023-03-14
问题内容

我希望能够构造一个原始的HTTP请求并使用套接字发送它。显然,您希望我使用urllib和urllib2之类的东西,但我不想使用它。

它必须看起来像这样:

import socket

tcpsoc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
tcpsoc.bind(('72.14.192.58', 80)) #bind to googles ip
tcpsoc.send('HTTP REQUEST')
response = tcpsoc.recv()

显然,您还必须请求页面/文件并获取和发布参数


问题答案:

您需要了解的大多数内容都在HTTP /
1.1规范中,如果您想推广自己的HTTP实现,则应该进行以下研究:http
:
//www.w3.org/Protocols/rfc2616/rfc2616.html




 类似资料:
  • 问题内容: 对于linux c编程原始套接字,这是一个快速的问题。如果我只想使用原始套接字来监听任何接口,我是否真的必须绑定到ip地址或接口来监听流量?据我了解,我觉得我应该能够只调用sock();。然后启动recvfrom()流量。也许我错了,但是我看过一些不使用它的程序。 问题答案: 没错,您唯一需要做的就是打电话给then 。不过请注意,使用收听存在一些限制。 如果您不是在“发送后忘记”的基

  • 问题内容: 我正在处理HTTP流量数据集,该数据集由完整的POST和GET请求组成,如下所示。我已经用Java编写了代码,该代码已经分离了每个请求,并将其另存为数组列表中的字符串元素。 现在我很困惑如何在Java中解析这些原始HTTP请求,有什么方法比手动解析更好吗? 问题答案: 我[正在]处理[HTTP]流量数据集,该数据集由完整的POST和GET请求组成 因此,您想解析包含多个HTTP请求的文

  • 我正在研究HTTP流量数据集,它由完整的POST和GET请求组成,如下所示。我用java编写了代码,将每个请求分开,并将其保存为数组列表中的字符串元素。现在我很困惑如何在java中解析这些原始HTTP请求,有什么方法比手动解析更好吗?

  • 问题内容: 我有一个关于使用golang嗅探tcp数据包的问题。我们编写了一个小工具,可以捕获来自光纤分接头的所有传入TCP数据包。 当前的实现在Linux下使用libpcap包装器。我们需要将此工具移植到Windows。当然,目前尚不可能。 所以我的问题是,是否存在用于嗅探数据包的跨平台解决方案?我们只需要TCP数据包,IP标头,没有以太网数据,并且不需要libpcap的所有功能。 如果没有跨平

  • 当我进行套接字编程时,我无法清楚地理解。 我的理解是 如果我使用此选项打开套接字,表示我可以在header之前创建自己的header,但最终数据以 /code>协议的格式发送。我的理解是正确的。如果错了,可以一些解释。 谢谢

  • 问题内容: 我想使用这些令牌发出基本的HTTP请求:http : //www.w3.org/Protocols/rfc2616/rfc2616-sec5.html 我知道Java通常会为您做到这一点,但是我想专门设置某些令牌。 问题答案: 为什么要重新发明轮子?Apache Http Client 4 符合rfc2616。