iris文件服务器,Iris的接口服务初始化

接口服务器搭建

数据库 xorm

框架 - Iris

app/model/default.go

package model

import (

_ "github.com/lib/pq"

"github.com/go-xorm/xorm"

)

func Check(err error) {

defer func() { err = nil }()

if err != nil {

println("****ERROR****")

panic(err)

}

}

var xdb *xorm.Engine

func init() {

var err error

xdb, err = xorm.NewEngine(

"postgres",

"user=postgres password=17112 host=127.0.0.1 port=5432 dbname=postgres sslmode=disable",

)

Check(err)

// 数据表同步

err = xdb.Sync2(new())

Check(err)

}

app/handler/index.go

package handler

import (

"gopkg.in/kataras/iris.v6"

)

const indexHTML = `

Title
Loading...

`

func index(ctx *iris.Context) {

ctx.HTML(iris.StatusOK, indexHTML)

}

// API

func RegisterAPI(app *iris.Framework) {

app.Get("/", index)

// Router

api := app.Party("/api")

{

_ = api

}

}

app/app.go

package app

import (

"gopkg.in/kataras/iris.v6"

"gopkg.in/kataras/iris.v6/adaptors/sessions"

"gopkg.in/kataras/iris.v6/adaptors/httprouter"

"gopkg.in/kataras/iris.v6/middleware/recover"

"time"

)

var (

app = iris.New()

session = sessions.New(sessions.Config{

// Session 的客户端 cookie 名称,默认为 "irissessionid"

Cookie: "sessionid",

// 生命周期: 0 表示不过期 -1 表示浏览器关闭时过期

Expires: time.Hour * 2, // 或设置一个值,如 2 小时

CookieLength: 32, // sessionid 的 cookie 值的长度

// 如果您想要在不同的子域上无效的 Cookie 的同一主机,然后启用它

DisableSubdomainPersistence: false,

})

)

func Run(portnumber string) {

//app.Favicon("./logo.ico") // 图标

// 路由

app.Adapt(httprouter.New())

// session

app.Adapt(session)

// 静态文件服务器

app.StaticWeb("/static", "./assets")

// 服务器恢复机制

app.Use(recover.New())

// 404

app.OnError(iris.StatusNotFound, func(c *iris.Context) { c.HTML(iris.StatusOK, "

404

") })

// API

handler.RegisterAPI(app)

// Server

app.Listen(":" + portnumber)

}

app.go

package main

func main() {

app.Run("8000")

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值