gorose orm+dotweb框架快速构建go web网站实战(四)

news/2024/4/28 17:12:29/文章来源:https://blog.csdn.net/weixin_33943347/article/details/88882774

路由规划

路由是所有请求的入口, 在这里, 我们配置所有的请求, 为每一个请求去上对应的名字, 并根据名字去请求不同的控制器, 从而获取最终的数据
在这里, 我们做出了简单的代码示例如下:

package routerimport (// 引入控制器"github.com/gohouse/kuaixinwen/controller"// 引入dotweb"github.com/devfeel/dotweb"// 引入dotweb中间件"github.com/devfeel/middleware/cors"
)func Run(Route *dotweb.HttpServer) {// 设置cors选项中间件, 并使用默认的跨域配置option := cors.NewConfig().UseDefault()// 首页测试 /Route.GET("/", func(ctx dotweb.Context) error {return ctx.WriteString("快新闻首页!")})// json返回测试 /jsonRoute.GET("/json", func(ctx dotweb.Context) error {return ctx.WriteJson("浪里个浪...")}).Use(cors.Middleware(option))// 前台展示列表 /getnewslistRoute.GET("/getnewslist", controller.GetNewsList).Use(cors.Middleware(option))// 后台管理admin := Route.Group("/admin").Use(cors.Middleware(option))// 新闻列表 /admin/newsdeladmin.GET("/getnewslist", controller.GetNewsList)// 获取单条新闻信息 /admin/getnewsbyidadmin.GET("/getnewsbyid", controller.GetNewsById)// 新闻增加或修改, 根据是否传了id来判定, 传了id就修改, 否则增加 /admin/newsaddoreditadmin.POST("/newsaddoredit", controller.NewsAddOrEdit)// 新闻删除 /admin/newsdeladmin.POST("/newsdel", controller.NewsDel)
}

说明

这里用到了 dotweb 的相关组件, 有 HttpServer , Contextcors 中间件
他们分别作用于 路由, 请求参数等相关和中间件(比如跨域) 等

  • Route.GET 代表该请求位 get 请求
  • Route.POST 代表该请求位 post 请求
  • Route.Group 将请求归类, 示例中是将后台管理的请求全部归类到 admin 下边
  • Route.Group.Use 使用中间件
  • option 中间件初始化
  • cors.Middleware(option) 加载中间件option
  • controller.xxxxx 加载控制器的对应方法

这里路由部分就完成了, 止于加载的控制器 controller 部分, 见下一节


本项目源码: https://github.com/gohouse/kuaixinwen

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_763026.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

移动开发中网站如何优化

常常做这样一件事,看见一篇博文觉得不错,CTRLD;看见微博一条感觉有用的分享,收藏;看见一篇*老师讲的教程,觉得不错分享给好友,自己还我的印象笔记 一下。做的太多太多了,却忘记自己总…

国庆送干货——前端建站实用UI工具vajoyJS

差不多是从七月开始有空就写一写,写到现在也算是可以拿出来展示了,vajoyJS是一款可以提供多项建站常用UI功能的插件库,让你轻松创建简易幻灯片、模态窗口和单屏滚页等效果。vajoyJS依赖于 jQuery 和 base.css,可以在Github&#x…

从头开始建网站(三)DNS

前面介绍了站点搭建所须要的两大要素:域名和server,这次要说的是域名解析,也就是把域名和server进行绑定的过程。 我们在訪问网络时,网址会被发送到DNSserver,然后由DNSserver返回我们所要訪问的serverIP地址&#xff…

开发缺点_使用模板网站开发建设网站的时候会有什么缺点吗?

企业想要利用网站扩大自己的品牌知名度和吸引客户在现在看来已近是很平常的一件事情了,当然还是有很多企业可能是怕浪费时间又或者是不愿意在这方面投入更多的成本,所以就直接选择了几个已有的模板来建设企业网站,这样成本是降低了、时间也没…

5图片加载优化_网站图片的优化技巧

图片占据了现代网站总带宽的70%以上。对于对设计美观要求高的网站,这个比例可能超过90%。带宽是一种昂贵的商品,存储也是高昂的商品,对于包含有大量图片的网站,往往对于图片的处理,就花费了大部分预算。此外&#xff0…

使用django运行django-admin.py无法创建网站

看《Python编程从入门到实践》这本书第三个项目用Django的时候,按照书里的命令开始忘记加句号,然后重新输入的时候,还是一样的情况,既不报错又没有manage.py,查了好久才找到这篇博客里的方法,“最后记录下&…

5e怎么绑定一键跳投_看到角色动画就头疼(这个网站从骨骼绑定到动画一键帮你解决)...

最近在忙一个项目,项目中遇到角色动画。虽然以前上学的时候学过,但是工作这几年,因为用到的时候比较少,基本上都还给了老师。话虽说还给了老师,但是项目中遇到了,还是要迎难而上的。(不上也没办…

打开的文件过多 socketexception_提高网站打开速度的7大秘籍

很多站长使用虚拟主机来做网站,网页内容一旦很多,网站打开速度就会特别慢,如果说服务器、带宽、CDN这类硬指标我们没有经济实力去做,不妨通过网页代码优化的方式来提高速度,卢松松总结了一些可行性的方法。1: 缩小Java…

网页模板快速建站工具_网页制作公司建站教程:快速做网页!

网页怎么制作?在形形色色的各种网站中,如果想快速吸引到访客的目光,网页需要精心设计才行。在不懂设计知识的情况下,你也能制作出好看个性的网站哦!下面就来看看制作网页完整步骤吧。第一步:建站系统选择不…

大型网站系统架构的演化

前言 一个成熟的大型网站(如淘宝、天猫、腾讯等)的系统架构并不是一开始设计时就具备完整的高性能、高可用、高伸缩等特性的,它是随着用户量的增加,业务功能的扩展逐渐演变完善的。在这个过程中,开发模式、技术架构、设计思想也发生了很大的变…

nginx+lua搭建网站waf

2019独角兽企业重金招聘Python工程师标准>>> 1、安装pcre yum -y install pcre-devel openssl openssl-devel zlib zlib-devel 2、安装 openResty cd /usr/local/ wget https://openresty.org/download/openresty-1.11.2.2.tar.gz tar xf openresty-1.11.2.2.tar.g…

iis服务器安装帝国网站,安装帝国cms如何配置iis

说明:假设环境安装在D:\Ecms,网站安装在E:\WEB1.将一键安装包解压缩到D:\下(当然也可以在其他盘符下),文件夹名为EmpireServer,将此文件夹名修改为Ecms(自定义)2.将D:\Ecms\web文件夹移动到E:\3…

c++ 网页服务器,使用C++ REST SDK实现静态网站服务器的示例

目的通过实现简易的静态网站服务器,来了解HTTP服务器的基本内容,以及C REST SDK如何使用。静态网站静态网站是指内容全部是静态的,不需要动态生成,当客户端请求指定资源时,将资源回复给客户端即可,不需要有…

linux Command ab 网站性能压力测试工具

linux Command ab 网站性能压力测试工具 文章目录linux Command ab 网站性能压力测试工具1. 简介2. 原理3. 安装4. 参数5. 性能指标5.1 吞吐率5.2 并发连接数5.3 并发用户数5.4 用户平均请求等待时间5.5 服务器平均请求等待时间6. 实例17. 实例2:测试nginx性能1. 简…

(图文详细)IIS+MySQL+PHP网站开发环境搭建之篇一(腾讯云服务器学生机购买)

(图文详细)IISMySQLPHP网站开发环境搭建之篇一(腾讯云服务器学生机购买)一、注册腾讯云账号 二、购买Windows云服务器三、登录Windows云服务器四、格式化与分区数据盘 (图文详细)IISMySQLPHP网站开发环境…

(图文详细)通过XAMPP导入WordPress网站建立个人博客

(图文详细)通过XAMPP导入WordPress网站建立个人博客一、简介二、下载WordPress安装包三、启动XAMPP,且保证Mysql和Apache处于“Running”状态。四、在PHPMyadmin中新建和配置WordPress的数据库 (图文详细)通过XAMPP…

在Centos 源码安装Apache并部署网站模板

1.准备源码包 1.1 进入下载目录 [rootlocalhos ~ ]# cd /usr/local/src/ 1.2 下载软件包 ① 下载apr-1.6.5.tar.gz [rootlocalhost src] # wget https://downloads.apache.org/apr/apr-1.6.5.tar.gz ②下载apr-util-1.6.1.tar.gz [rootlocalhost src] # wget https://down…

Linux网站架构系列之Apache调优全解

环境: view sourceprint?1.CentOS6.4 x86_64位 采用最小化安装,系统经过了基本优化篇2.apache版本:httpd-2.4.63.apr版本:apr-1.4.84.apr-util版本:apr-util-1.5.25.pcre版本:pcre-7.86.源码包存放位置…

容器方式搭建免费的表白网站(2022.9.25更新)

目录效果图拉取镜像运行容器访问制作方式效果图 拉取镜像 docker pull registry.cn-zhangjiakou.aliyuncs.com/dwz/softwares:boy921运行容器 docker run -di -p 80:80 -e BOYNAME王晨 -e GIRLNAME王舒涵 -e FIRSTTIME2022/9/21 -e STARTTIME2022,8,21 registry.cn-zhangjia…

24.网站更新数据监控-1

24.网站更新数据监控-1 一.scrapy 对网站是否更新做监控1.spider.py # -*- coding: utf-8 -*- import scrapy import time import re from WEB.conmon.md5_tool import md5_encodefrom WEB.items import WebItemclass CompanyInfoSpider(scrapy.Spider):name wenzhouallowed_d…