最近初学go有点疑惑。
1、为什么go的框架都没有统一入口文件
看了go的流行框架比如,beego ,gin 等等发现好像都没有index.go这样的概念。一般在实际项目中是需要统一处理一些逻辑的,比如session、拦截器、路由等等,好像go的框架都没有
2、提供api服务时生产环境需要nginx吗
go提供服务端接口的时候生产环境应该是怎样的,是直接用http模块服务还是需要比如nginx这样做代理呢?
<a href="/user/haha_cat" title="@haha_cat">@haha_cat</a> 如果对外提供接口服务,假如10个(或者更多)接口,那么这10个是放在一个文件的main中,还是分别10个文件的main中,这10个接口根据需要可能要做一些统一的操作,如果分别在10个文件中应该怎么统一处理呢?
#8
更多评论
1 理论上来讲,session,拦截器,路由都是有的,这些东西你可以看文档,文档里面应该是都有写了要怎么使用的。 golang 的框架应该是不需要统一的入口的,因为golang的程序不是依赖框架来启动的,而是依赖你自己写的 main 函数来启动作为程序的入口(这点可以参考 C 语言)。
2 简单来说 golang 做服务的时候可以不需要nginx,直接用 http 的模块就行。 也就是说直接编译一个二进制文件放到服务器上就可以提供服务了。如果你想要 https ,golang 也有 tls 的模块可以使用。
#2