安装iris框架

1、导语

目前Go语言已经为大多数人所熟知,越来越多的开发人员选择使用Go语言来进行开发,但是如何使用

Go来进行web开发,在其他编程语言中都有对应的开发框架,当然在Go中也有,就是即将要介绍的——iris,它号称为速度最快的Go后端开发框架。在iris的网站文档上,列出该框架具备的一些特点和框架特性,列举如下:

1)聚焦高性能
2)健壮的静态路由支持和通配符子域名支持
3)视图系统支持超过5以上模板
4)支持定制事件的高可扩展性Websocket API
5)带有GC, 内存 & redis 提供支持的会话
6)方便的中间件和插件
7)完整 REST API
8)能定制 HTTP 错误
9)源码改变后自动加载
等等还有很多特性,大家可以参考Iris官方文档。

iris框架学习推荐网站

官网:https://iris-go.com/

框架源码地址:https://github.com/kataras/iris

中文学习文档:https://learnku.com/docs/iris-go/10

iris框架安装

官网安装方式:

> go get -u github.com/kataras/iris

注意:iris要求你当前的go语言环境最低是1.8,但是官网推荐1.9以上

但是,由于GitHub上的资源,咱们在国内直接拉取会出现安装失败的问题,就例如:

# cd .; git clone https://github.com/kataras/iris D:\go_workspace\src\github.com\kataras\iris
Cloning into 'D:\go_workspace\src\github.com\kataras\iris'...
fatal: early EOF
fatal: The remote end hung up unexpectedly
fatal: index-pack failed
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
package github.com/kataras/iris: exit status 128

出现这种情况,不要慌,这是因为在国内访问GitHub会出问题,所以在我们安装Go语言中的一些包的安装就需要通过代理来实现

Go模块的全球代理

Linux\macOS

将以下指令添加到当前操作系统的环境变量当中.bashrc或者.bash_profile文件

# Enable the go modules feature
export GO111MODULE=on

# Set the GOPROXY environment variable
export GOPROXY=https://goproxy.io

windows

在windows中执行以下指令

# Enable the go modules feature
$env:GO111MODULE="on"

# Set the GOPROXY environment variable
$env:GOPROXY="https://goproxy.io"

现在,在构建和运行应用程序时,go将通过goproxy.io获取依赖项。在goproxy储存库中查看更多信息。

如果你的Go版本> = 1.13,则GOPRIVATE环境变量将控制go命令认为哪个模块是私有的(不可公开使用),因此不应使用代理或校验和数据库。例如:

go env -w GOPROXY=https://goproxy.io,direct

# Set environment variable allow bypassing the proxy for selected modules
go env -w GOPRIVATE=*.corp.example.com

将代理设置完之后,就可以来执行,官方指定的安装方式:

> go get -u github.com/kataras/iris

测试

package main

import (
    "github.com/kataras/iris"
)

func main() {
    app := iris.New()
    //输出html
    // 请求方式: GET
    // 访问地址: http://localhost:8080/welcome
    app.Handle("GET", "/welcome", func(ctx iris.Context) {
        ctx.HTML("<h1>Welcome</h1>")
    })
    //输出字符串
    // 类似于 app.Handle("GET", "/ping", [...])
    // 请求方式: GET
    // 请求地址: http://localhost:8080/ping
    app.Get("/ping", func(ctx iris.Context) {
        ctx.WriteString("pong")
    })
    //输出json
    // 请求方式: GET
    // 请求地址: http://localhost:8080/hello
    app.Get("/hello", func(ctx iris.Context) {
        ctx.JSON(iris.Map{"message": "Hello Iris!"})
    })
    app.Run(iris.Addr(":8080")) //8080 监听端口
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值