beego小技巧两则:通过命令行自定义端口和环境,url中带有中划线处理

本文涉及的产品
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 1,通过命令行自定义端口和环境 先用flag提取参数,如果要环境,就反向注进去, 如果是端口,就打到beego.Run函数里去。 2,在作router里的url解析时,如果URL中含有-中划线,用严格的string是不能匹配的。

1,通过命令行自定义端口和环境

先用flag提取参数,如果要环境,就反向注进去,

如果是端口,就打到beego.Run函数里去。

2,在作router里的url解析时,如果URL中含有-中划线,用严格的string是不能匹配的。

需要去掉这个string限定。

package main

import (
	"flag"
	"fmt"
	_ "prismlogapi/routers"

	"github.com/astaxie/beego"
	"github.com/astaxie/beego/orm"

	_ "github.com/go-sql-driver/mysql"
)

func main() {
	//orm.Debug = true
	runmode := flag.String("runmode", "dev", "runmode:default is dev")
	port := flag.String("port", "9527", "port:default is 9527")
	flag.Parse()
	beego.BConfig.RunMode = *runmode
	fmt.Println(beego.BConfig.RunMode)
	fmt.Println(port)
	if beego.BConfig.RunMode == "dev" {
		beego.BConfig.WebConfig.DirectoryIndex = true
		beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
	}

	dbhost := beego.AppConfig.String("dbhost")
	dbport := beego.AppConfig.String("dbport")
	dbuser := beego.AppConfig.String("dbuser")
	dbpassword := beego.AppConfig.String("dbpassword")
	db := beego.AppConfig.String("db")
	orm.RegisterDriver("mysql", orm.DRMySQL)
	conn := dbuser + ":" + dbpassword + "@tcp(" + dbhost + ":" + dbport + ")/" + db + "?charset=utf8"
	fmt.Println(conn)
	orm.RegisterDataBase("default", "mysql", conn)
	orm.SetMaxIdleConns("default", 1000)
	orm.SetMaxOpenConns("default", 2000)

	beego.Run(":" + *port)
}

  

// @Title 获取特定部署的日志
// @Description 返回多条日志
// @Param id path int true "The key for staticblock"
// @Success 200 {object} models.PrismLog
// @router /:app/:depverion:string/:order:int/ [get]
func (u *PrismLogController) GetByAppDepOrd() {
	app := u.GetString(":app")
	depverion := u.GetString(":depverion")
	order, _ := u.GetInt(":order")
	fmt.Println(app, depverion, order, "@@@@@@@@@@@@@@@")
	s := models.GetPrismLogByAppDepOrd(app, depverion, order)
	u.Data["json"] = s
	u.ServeJSON()

  

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
Windows
windows环境下根据端口号查询进程编号并杀掉此进程
windows环境下根据端口号查询进程编号并杀掉此进程
|
10月前
|
Web App开发 前端开发 JavaScript
SAP UI5 应用开发教程之八十七 - 如何让 SAP UI5 Mock 服务器支持自定义 url 参数试读版
SAP UI5 应用开发教程之八十七 - 如何让 SAP UI5 Mock 服务器支持自定义 url 参数试读版
|
8月前
Thymeleaf内置对象、定义变量、URL参数及标签自定义属性
Thymeleaf内置对象、定义变量、URL参数及标签自定义属性
202 0
|
21天前
|
JavaScript
端口,自定义端口,端口写死,Vue如何自定义端口号,这里很关键,因为前后端数据交互,如果在WebConfig中写死了,端口号不对,会导致访问数据失败
端口,自定义端口,端口写死,Vue如何自定义端口号,这里很关键,因为前后端数据交互,如果在WebConfig中写死了,端口号不对,会导致访问数据失败
|
1月前
|
域名解析 存储 缓存
HTTP请求流程概览:浏览器构建请求行含方法、URL和版本;检查缓存;解析IP与端口
【6月更文挑战第23天】 HTTP请求流程概览:浏览器构建请求行含方法、URL和版本;检查缓存;解析IP与端口;TCP连接(HTTP/1.1可能需排队);三次握手;发送请求头与体;服务器处理并返回响应;TCP连接可能关闭或保持;浏览器接收并显示响应,更新缓存。HTTP版本间有差异。
38 5
|
1月前
|
机器学习/深度学习 安全 测试技术
【Docker项目实战】在Docker环境下使用RustScan端口扫描工具
【6月更文挑战第9天】在Docker环境下使用RustScan端口扫描工具
45 5
|
23天前
|
网络协议 Linux 数据库
计算机网络知识之URL、IP、子网掩码、端口号
计算机网络知识之URL、IP、子网掩码、端口号
|
29天前
|
Java
SpringBoot配置-配置文件分类,server.port修改端口,自定义修改配置内容
SpringBoot配置-配置文件分类,server.port修改端口,自定义修改配置内容
|
1月前
|
网络协议 安全 Docker
windows环境下的设置docker远程访问(开放2375端口)
windows环境下的设置docker远程访问(开放2375端口)
150 0
|
2月前
|
Linux Apache
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
CentOS 7 源码安装LAMP环境源 和apache监听别的端口
45 0