Golang 的简要
Go是Google开发的一种编译型,可并行化,并具有垃圾回收功能的编程语言。
Golang目前已经发展成为非常广泛使用的开发语言。
如果你开发WEB、后台服务、API,都可以用到golang。
更多的Golang可以参看官网
Iris 的设计特性
我觉得这些都是千篇一律的,网上随处可见 假如还是没有听过的,就阅读github
下面我们就进入正题
安装Iris
go get -u github.com/kataras/iris/iris
注:发现国内将golang.org和gopkg.in等一些地址墙了,解决方法就是在github找到对应的资源,然后放到$GoPath/src/目录下。或者在这里尝试。更或者加代理访问。
第一个例子
package main
import "github.com/kataras/iris"
func main() {
api := iris.New() //获取iris实例,推荐这样写,方便后边设置其他属性
api.Get("/hi", hi) //添加路由
api.Listen(":8080") //设置端口,并监听
}
func hi(ctx *iris.Context){
ctx.Writef("Hi %s", "iris")
}
- 执行
iris go main.go然后浏览器输入localhost:8080/hi就会在网页看到结果Hi iris - 注:例子中添加的端口号是8080,所以在访问时需要加上
:8080 - 而在平时我们需要直接访问而不想加上丑陋的
:8080时,就需要将端口号改成:80,这样就可以直接访问域名了。 - 但是特别主要的是一般80是系统对外的端口,需要系统权限的。在自己测试时还是用8080,在需要部署到服务器上线时,可以改成80端口。
第二个例子 html/template解析html
<!-- ./templates/hi.html -->
<html><head> <title> Hi Iris</title> </head>
<body>
<h1> Hi {{.Name}} </h1>
</body>
</html>
// ./main.go
import "github.com/kataras/iris"
func main() {
iris.Get("/hi", hi)
iris.Listen(":8080")
}
func hi(ctx *iris.Context){
ctx.Render("hi.html", struct { Name string }{ Name: "iris" })
}
- Iris框架里面已经封装好了html模板的支持。
- 函数ctx.Render(“hi.html”,struct{})
- 第一个参数是需要加载的html文件
- 第二个参数是struct{}对象,主要用于给模板传值
- struct中的参数必须以大写字母开头,在模板中用
.Value的形式读取。后面文章会讲解怎么传值,怎么取值。
特别注意:
注意模板的地址./templates/hi.html,在iris中默认会解析./templates文件下的所有.html文件(递归所有子目录)。后面文章我们会深入的讲解如何自定义解析目录。
主要知识点总结
- 添加端口监听:80与8080的区别
- 路由概念,
iris.Get("/hi", hi) - 渲染html页面
ctx.Render() - 渲染html模板,并如何传值
第一篇主要是正常运行例子,讲解例子里面的相关知识点,在后面几期里面会一一解答
博主本着把自己曾经趟过的坑重现一遍,如果你有什么问题疑惑欢迎留言,看到第一时间答复