堆栈溢出,无法从HTTP服务器发送和接收数据

时间:2015-11-29 06:26:58

标签: c++ winsock

我已经编写了这个暴力破坏者一段时间并且询问了大量的HTTP问题,但是当我在Visual Studio中运行我的代码时,我得到了堆栈溢出,而且我无法发送和接收数据正确地从服务器。

这是我的代码。

SetProcessDefinitionVersionCmd

1 个答案:

答案 0 :(得分:1)

  1. 您正在耗尽堆栈空间,因为您正在使用递归例程(BF::generatePassword)生成不断增加的字符串(while (1)循环在{ {1}})。重构BF::crackPassword是非递归的。

  2. 您遇到HTTP问题,因为您发送的HTTP请求格式不正确。您需要在请求结束时(在所有请求标头之后)包含一个额外的BF::generatePassword对。它是一个空行,告诉服务器它读取整个请求,现在可以发送响应。

  3. 不要包含" Content-Length"带有HTTP GET请求的标头。使用GET发送实体正是有点无意义的。第一个答案here有血腥的细节,可以归结为"所以,是的,你可以发送一个GET的身体,不,这样做是绝对没有用的#34;。如果您需要使用请求发送数据,您可能需要POST,而不是GET。

相关问题