项目简介
该项目南京邮电大学的雷镇豪学长主持搭建,由章韵老师进行辅导,读完了论文之后感到深深的佩服,学长功力深厚,该项目的源码和使用说明已经由学长上传至GitHub上,该学长的GitHub的地址为GitHub。该项目主要搭建了一个基于web端的远程视频监控平台,能够通过浏览器连接远程开发板的视频连接,除此之外该平台还可以控制开发板的一些配置,在必要时可以通过SSH(对于客户来说)来连接开发板上的系统。为了实现控制的实时性,该项目里采用了P2P模式的通讯方式,其中服务器端仅作为分配通信双方的ID的中心并维护了一个设备端的列表,当通讯双方建立了连接时,无任何流量会经过服务器端。其通讯示意图如下:
对于基于webrtc物联网硬件控制研究与设计的项目——服务器端重建
Go语言简介
服务端的配置要求使用go语言,go语言可在Windows、mac OS、Linux等主流系统上运行,是2009年发布的一款语言,编译型语言,具体的介绍可在百度百科上查看,其语法规则则可以在菜鸟教程中查看。
服务器端的重建
对于虚拟机和Go语言的安装,由于比较简单,而且官网上有具体的编译好的二进制文件,所以略去不计。
同时,服务器端的启动十分简单,只要在目录下运行即可
go run main.go
但是之后会出现一个报错:
可以看到,该报错的原因应该是被墙了,但是为什么运行该服务端需要和GitHub进行数据交换呢?根据gojay关键字进行搜索,可以发现gojay是一个JSON解析库,所以可以推测刚刚配置好的环境里面没有gojay的包,go语言的包管理器自动下载,却被墙了。
后面尝试了尝试百度了一下Go的第三方包手动设置办法,发现比较难搞,思考了一下还是决定不用土方法自己设置环境,应该上一个重量级的工业化IDE,这样会方便不少,百度了一下,发现Go语言的IDE比较出名的有Goland和VS CODE,其中Goland是和Visual Studio一样的一个集成化编译器,而VS CODE说实话对于一个轻量级的文本编辑器来说已经做的很不错了,但是和专业的Pycharm和Goland等重量级的IDE比较实实在在是差距比较大。同时思考了一下由于以下原因:
- Go在Windows上的支持也挺不错的
- 再加上虚拟机有时候确实挺卡的
- 代理搬到虚拟机上比较费时间
- 主要还是我比较懒,哈哈哈
决定暂时先用着Windows的Go吧,后面有问题再说吧
Goland的安装
可以到官网上下载响应版本,傻瓜式安装,不再赘述。
至
于
试
用
期
过
后
怎
么
办
的
问
题
,
网
络
上
有
很
多
办
法
,
我
计
划
等
30
天
后
再
踩
坑
,
反
正
试
用
期
就
先
用
着
吧
\color{#FF0000}{至于试用期过后怎么办的问题,网络上有很多办法,我计划等30天后再踩坑,反正试用期就先用着吧}
至于试用期过后怎么办的问题,网络上有很多办法,我计划等30天后再踩坑,反正试用期就先用着吧这里说一下如何设置中文环境,可以参考这篇文章,另外插件窗口可以设置系统代理,会比较舒服:
配置好中文后的界面如下:
刚刚说了对于一些国外资源的包需要挂一些代理,Goland也有了比较傻瓜式的代理方法,具体可以参见这篇文章
项目启动
代理挂好之后将Goland重新启动即可,即可使用终端或者Goland自带的Debug功能即可。
可以看到其加载了一些网页和对应的URL参数,这里说一些题外话,这个配置里面是没有ACL列表的,可以推测出其实学长在整个系统里面是没有做安全模块的。
然后对应的将对应URL输入就好了,因为监听的是本机的80端口,所以直接浏览器登录127.0.0.1:80\index即可。多说一句,如果没有成功应该是本机的80端口被占用了,关闭后即可设置成功。