Web 应用程序 - Web 应用程序和 C++
web applications - Web App and c++
这对我来说是全新的,而且由于它似乎是微不足道的事情,我找不到我们心爱的朋友的任何回应......我的问题是:我必须创建一个网络应用程序,如果客户端的计算机上除了浏览器之外什么都没有,它就可以工作。我的问题是:是否可以在我的项目中包含一个外部库(这里我想使用 PCL(点云库),一个C++库),即使客户端没有安装任何东西,也可以让它工作?例如,如果我使用QtWebKit,我能够创建这种Web应用程序吗?
非常感谢,很抱歉(也许)愚蠢的问题,我以前从未做过网络开发,这是我第一次。
有好的一天!
这个问题和一天一样广泛,但在这里(你没有给出太多关于你的背景,所以如果我太基础,我道歉)。
Web浏览器只是一个软件,它知道如何处理从TCP套接字传递HTTP的HTML,CSS和Javascript。
因此,在最基本的层面上,要在浏览器中工作,您只需要编写一个程序,该程序侦听TCP套接字,并根据HTTP协议在响应正文中传递标头和HTML。
因此,撇开套接字部分不谈,您的方法可能如下所示:
std::cout << "<h1>Hello, world!</h1>" << std::endl;
事实上,绝大多数原始的动态网站都是这样工作的:它们只是C程序,只是碰巧在过去产生HTML作为输出(cgi-bin)。
这种方法的主要问题是,将代码编写到这种详细程度以生成 HTML 非常繁琐且耗时,尤其是当您考虑 CSS 和 JavaScript 时。
这是当今大多数Web应用程序都是用Java,.Net,Ruby,PHP等实现的关键原因之一,因为有大量功能齐全,稳定和成熟的Web开发框架,这些框架消除了创建动态网站的繁重工作(C/C++非常罕见)。
但是,如果这绝对是您想要使用的语言,那么有几个很好的框架可供C++。
维基百科有一个关于C++框架的有限部分,但它涵盖了我建议调查的2个框架(CppCMS和Wt):https://en.wikipedia.org/wiki/Comparison_of_web_frameworks#C.2B.2B
其中,我只有CppCMS的直接经验,但我可以推荐它 - 它的方法C++是惯用的(至少在我看来,但我必须承认我更经常是一个Java Web开发人员而不是C++)
此外,在这个线程上有一个非常有用的,如果有点教条的SO讨论可能是相关的:制作网站/Web 应用程序的C++受欢迎程度如何?
- 我的web应用程序的用户需要在浏览器上手动启用本机客户端吗
- Java JNI GDAL 本机库在重新部署为 Web 应用程序时出现类加载器错误
- 用于管理 CATIA 文件的 Web 应用程序
- 我想将使用 VTK、C++ 和 QT 开发的桌面应用程序移植到 Web 应用程序
- 将C 代码(本机客户端)移植到浏览器(Web应用程序)
- 如果您不编写 Web 应用程序,并且您的客户端不是浏览器,那么 Web 套接字相对于常规套接字的优势是什么?
- 将Web应用程序作为资源嵌入到Qt可执行文件C++
- 想要在Web应用程序中使用本机C库,我的选择是什么
- 如何在C++服务器应用程序和django web应用程序之间进行通信
- 我可以通过使用 Wt 作为我的 Web 框架在 Web 应用程序中完全隐藏 "behind" C 代码吗?
- 在web应用程序中使用Zhu Ramanan代码
- 从 IIS 7.5 Web 应用程序调用 Win32 CreateEvent() 失败
- 将 c# asp.net Web 应用程序与C++ dll 链接时,是在服务器或客户端上运行的 dll 代码
- 如何在 Web 应用程序中使用本机库方法
- 实现 Web 应用程序的张量分解的最有效语言
- 如何在使用 Boost C++ 编写的 php Web 应用程序中读取地图(在共享区域中)
- 在Java Spring Maven web应用程序中调用C/C++函数
- 如何设置C++web应用程序服务器侦听来自tomcat/restlet服务器的http请求
- 将Simplemembership轻松集成到现有的Web应用程序中
- 是否有一个类似于.NET框架的基于C++的DebianLinux web应用程序框架