目录

项目实训4与后端的连接

项目实训4:与后端的连接

因为前端使用vue,而后端使用c++,为了避免网络延迟所可能带来的延迟,我们需要将c++代码进行转换并当成js的包被前端调用。我这周的主要目标便是尝试进行前后端的连接。

我了解到nodejs可以通过一些特殊机制将c++的代码转换为编译后的node文件。我首先根据官网上的hello world进行操作,因为我并不会使用nodejs,我短暂的补了一些nodejs的知识。

成功运行addon的hello world后,我的心情还是比较激动的。但是我发现webpack在编译时会报错。

https://i-blog.csdnimg.cn/blog_migrate/6e6f12da1de228f96d506d0c05956213.png

但是我没在网上找到合适的资料,我只知道由于webpack可能没有对.node文件加载的机制。需要设置loader进行加载,但是我并没有找到这样的loader。

我下面的思路是这样的:首先尝试自己编写自定义的loader去适应这种情况

或者放弃webpack的模块化功能而改为js负责界面的路由。

3.29日更新

发现cli有个node-loader的加载库,可以加载.node文件,在安装后,果然可以通过编译,但是出现了新的错误:

https://i-blog.csdnimg.cn/blog_migrate/f1673e0d783233d5587ee3aaa4e99ff5.png

3.31日更新

又配置了两天,发现这个发现可能并不是很可行。下一步的目标是通过socket连接进行通信。

我的想法是先学习一下c++的socket通信,然后实现一下c++端的server

和js端的client。

运行成功实例

client:

https://i-blog.csdnimg.cn/blog_migrate/9d0faeb86978f9dacd59f8f51467d07a.png server:

https://i-blog.csdnimg.cn/blog_migrate/b1fda67b01eed2fcce1e8d63afb3e036.png 运行时的小问题:需要在gcc的参数行添加 -lwsock32

分析一下代码: