cloudgo-io——基于iris框架的web小应用

web小应用之cloudgo-io


1、概述

1.1 功能

这是一个简单的web小应用,有以下几个功能:

  • 支持静态文件服务
  • 支持简单的js访问
  • 提交表单,并输出一个表格
  • 对/unknow给出开发中的提示,返回码501

1.2 运行

  • 转到main.go所在目录,执行以下命令
go run main.go # 不指定端口默认8080

or

go run main.go -p 9090 # 指定监听9090端口

or

go install && cloudgo-io [-p ...] # 先安装之后可以直接使用cloudgo-io或cloudgo-io -p ...命令启动
  • 在浏览器地址栏输入
# 登录界面
http://localhost:yourport/login

# 静态资源文件服务
http://localhost:yourport/public

# 未开发
http://localhost:yourport/unknown

1.3 效果

  • 主界面(背景来自我的github page)
    在这里插入图片描述
  • 支持静态文件服务
    在这里插入图片描述
    在这里插入图片描述
  • 支持简单的js访问(可跳转到静态资源界面)
    在这里插入图片描述
    在这里插入图片描述
  • 提交表单,并输出一个表格
    在这里插入图片描述
    在这里插入图片描述
  • 对/unknow给出开发中的提示,返回码501
    在这里插入图片描述

2、挑选框架

综合比较了最常见的六种框架后,我选择了iris,毕竟年份最新、功能最全、速度最快。

这是2017年的统计数据。虽然star数暂时没有beego那么多,但是iris比beego慢了四年诞生,发展得很快。

当然我选择iris最大的原因,还是因为下图,功能这么全,早进坑早享受。不过现在iris网上的教程比较稀缺,多数需要先跟着官方example一步一步摸索。

以上两幅图片引用自:
https://blog.csdn.net/dev_csdn/article/details/78740990

关于速度,见iris最新官方数据。

3、文件结构

没有硬性规定,但是最好把负责不同模块或功能的文件分到不同的文件夹,便于维护。我的文件结构如下:

cloudgo-io/
    configs/
        main.tml
    static/
        css/
        js/
        img/
    services/
        GetPages.go
        ServicesManager.go
    templates/
        login.html
        info.html
  • configs中的main.tml文件可交由服务器管理员配置服务器后台。虽然也可以放在代码中配置,但是这样比较方便,不用每次都重新编译代码。
  • static存放静态文件。
  • services存放服务器提供服务的一系列代码,最后可以为这一系列服务安排一个manger统一管理,也方便统一调用。
  • templates存放网页的模板,在模板中需要留一些待注入的标记,有了这些预设的标记便可以在代码中找到对应的标记进行填充,比直接找element方便许多。
<table border="1">
    <tr>
        <th>username</th>
        <td>{
  {.username}}</td>
    </tr>
    <tr>
        <th>password</th>
        <td>{
  {.password}}</td>
    </tr>
</table>

以下介绍一些我的一些关于iris的探索成果和使用心得


4、iris的简单使用

4.1 获取iris

go get -u github.com/kataras/iris

4.2 使用的套路

  • 最简单版(官方例子)
package main

import "github.com/kataras/iris"

func main() {
   
    app := iris
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值