我对Linux的c++编程还很陌生,我想做以下几点:;
控制台应用程序,它将处理和回显不适应的HTTP GET请求的参数。
但我的第一步是;
所以如果打开浏览器做一个;

http://192.168.2.10/?yadda=1

在我的linux系统192.168.2.10上,我会在屏幕上得到一个回声
New incomming web request parameters: yadda=1

我已经在.NET中用HTTP侦听器做了几次,但是我完全不知道如何用C++在Linux中实现这一点。
谢谢你的帮助!
(在Linux下运行的没有虚拟机,没有VMware,有一个虚拟机,没有回声管道,脚本解决方案,仿真等等,我想知道如何在Linux下使用C++)。
换句话说;
Dim listener As New HttpListener()
listener.Prefixes.Add("http://localhost/")
Dim context As HttpListenerContext = listener.GetContext

在Linux中使用C++创建一个BINEAL可执行文件。一些实际的c++代码行将是有用的。谢谢

最佳答案

1)您可以在Linux上很快地与netcat(nc)连接,而无需编写任何网络代码。
NC可以在服务器模式下运行,并可以将管道输入/输出到另一个程序,比如C++控制台程序。
2)还可以使用iNET/XeNETD将控制台程序转换为网络守护进程。你为一个特定的端口配置你的程序(在配置文件中),它完成监听连接的工作,然后用套接字描述符欺骗你的C++程序,把它作为你的标准,所以你只需要使用标准的输入/输出调用。同样,这让你可以编写一个网络程序,而不需要知道套接字。下面是一个例子:Linux: How to make a daemon/service usable with xinetd?
我将从选项2开始,它可以工作,并且可以在几分钟内得到一个原型,让您专注于控制台回声功能,然后如果您真的需要稍后,您可以重新访问一些东西,并编写一个完整的网络守护程序。
3)我只记得libcurl(http://curl.haxx.se/libcurl/c/),它工作得很好。感谢舍普林在评论中提到这一点。我在Linux上用过。它是C,但是你可以用C++来包装它,而不是包装伯克利API。
除此之外,您将使用Linux上的伯克利(BSD)/POSIX套接字(http://en.wikipedia.org/wiki/Berkeley_sockets)调用,或者在那里可能有一个很好的C++库。如果你愿意,我可以把我的脱机给你。我所知道的最好的书是已故的W.Richard Stevens名著,UNIX网络编程,以及相关的系列。
我只是想把前2个想法扔掉,因为你说你不确定从哪里开始C++,它可能会让你开始更快。

关于c++ - 如何在本地C++ Linux中响应http get,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23708456/

10-10 21:22