golang交叉编译,在服务器上起一个http服务

项目结构

package main

import (

"fmt"

"log"

"net/http"

)

// w表示response对象,返回给客户端的内容都在对象里处理

// r表示客户端请求对象,包含了请求头,请求参数等等

func index(w http.ResponseWriter, r *http.Request) {

// 往w里写入内容,就会在浏览器里输出

fmt.Fprintf(w, "Hello golang http!")

// 接受输入的内容,并在iterm中打印出来

b, err := ioutil.ReadAll(r.Body)

if err != nil {

log.Fatal(err)

}

fmt.Printf("%s\n", b)

}

func main() {

// 设置路由,如果访问/,则调用index方法

http.HandleFunc("/", index)

// 启动web服务,监听9090端口

err := http.ListenAndServe(":9090", nil)

if err != nil {

log.Fatal("ListenAndServe: ", err)

}

本地执行:go run start.go
mac os&Linux(http://lib.csdn.net/base/linux)交叉编译:
CGO_ENABLED=0 GOARCH=amd64 GOOS=linux Go build
编译后就会在src下出现startPkg二进制文件,可通过上传至云存储,并在linux机器上curl下来:

curl -o ~/tmp/start http://o8ckhoonz.bkt.clouddn.com/start 

执行:./start
在浏览器中访问http://ip:9090就可以看到Hello golang http!输出了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,837评论 18 139
  • 需要先安装go环境设置环境变量12345 # 可以根据自己需要调整路径 echo 'export GORO...
    加菲猫Jack阅读 1,989评论 3 1
  • 欢迎扫码关注公众号flysnow_org,第一时间看后续文章。觉得有帮助的话,顺手分享到朋友圈吧,感谢支持。 前段...
    飞雪无情flysnow_org阅读 33,221评论 4 45
  • 本文简单介绍 Golang 提供的命令。我们执行 go help [command] 可以查看具体命令的帮助信息。...
    juniway阅读 2,018评论 0 2
  • 【《徐芒耀的油画世界》连载17】 【回顾二、武汉十一年磨一剑】 1967年,徐芒耀这一届毕业生才从浙江美术学院附中...
    陈洪标写字说画阅读 251评论 0 1