golang 2行代码在基于arm linux的树莓派、orangepi上运行http web服务

本文介绍了如何利用Go语言在Windows环境下交叉编译,以便在基于ARM架构的Linux系统(如树莓派、Orange Pi)上运行HTTP Web服务。通过提供一个简单的HTTP服务器源码示例,详细阐述了从创建项目、编写代码到编译和部署的全过程。只需将编译后的可执行文件复制到目标设备,并设置相应目录,即可实现通过HTTP访问静态内容或进行动态处理。

go语言(golang)简化了跨平台交叉编译步骤,支持在windows系统下交叉编译基于arm+linux平台的应用,运行时无需其它依赖库。以下以一个简单的http server为例,先上源码:

 

************************************************************

package main

 

import(

        "net/http"

)

 

funcmain(){

        http.Handle("/",http.FileServer(http.Dir("html")))

        http.ListenAndServe("0.0.0.0:8080",nil)

}

 

************************************************************

main函数里代码说明:

//第一行:设置主目录为启动目录下的html目录

//第二行:启动http服务,监听8080端口

************************************************************

步骤1:在windows系统下(本人用的是win10)安装go语言的开发环境及可视化编译器LiteIDE(步骤很简单,网上教程很多)

步骤2:新建Go1 Command Project,命名为"Test"

 

步骤3:import里修改为"net/http",main()函数修改为如下两行代码:

        http.Handle("/",http.FileServer(http.Dir("html")))

        http.ListenAndServe("0.0.0.0:8080",nil)

步骤4:目标环境修改为cross-arm6,按“ctrl+B”编译,生成的执行文件为源码目录下的"Test",无后缀

 

步骤5:复制"Test"到你的arm开发板(树莓派raspberrypi、香橙派orangepi),并授权:sudo chmod 777 Test,同时在“Test”所在目录新建一个“html”目录,运行./Test

接下来就可以通过http://开发板ip:8080访问http服务了,记住新建一个“html”目录后,放进一些html文件/其它文件,可像普通网站一样浏览、下载。

************************************************************

1.本例建立一个静态网站,在main函数里添加http.HandleFunc可增加动态处理能力

2.在raspberry pi 2b,orange pi lite测试通过(arm版本前向兼容)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值