热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

beego对带有参数的路由无法正常match

问题:使用beego框架,浏览器访问/login?exit=true时,跳转到的的是/

问题:

使用beego框架,浏览器访问/login?exit=true时,跳转到的的是/




代码:

路由注册

1
2
3
4
func init() {

    beego.Router("/login", &controllers.LoginController{})

    beego.Router("/", &controllers.MainController{})

}

就两个。

登陆时使用/login,退出时使用/login?exit=true。




LoginController的Get方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
func (this *LoginController) Get() {

    isExit := this.Input().Get("exit") == "true"



    if isExit {

        beego.Trace("login/isexit")

        this.Ctx.SetCOOKIE("uname", "", -1, "/")

        this.Ctx.SetCOOKIE("pwd", "", -1, "/")

        this.Redirect("/", 301)

        return

    }



    this.TplName = "login.html"

    this.Data["Title"] = "login"

}

所以登陆和退出都通过/login。只是退出时,带有参数。

在safari上观察到的行为:

在浏览器中输入http:localhost:8080/login?exit=true时,bee run的输出如下

1
2
3
4
5
6
7
8
9
10
2017/11/03 14:43:43 [D] [default.go:16] home/get

2017/11/03 14:43:43 [D] [server.go:2568] |      127.0.0.1| 200 |   1.341276ms|   match| GET      /     r:/

2017/11/03 14:43:43 [D] [default.go:16] home/get

2017/11/03 14:43:43 [D] [server.go:2568] |      127.0.0.1| 200 |    666.276µs|   match| GET      /     r:/

2017/11/03 14:43:44 [D] [login.go:18] login/isexit

2017/11/03 14:43:44 [D] [server.go:2568] |      127.0.0.1| 301 |     62.869µs|   match| GET      /login   r:/login

2017/11/03 14:43:44 [D] [default.go:16] home/get

2017/11/03 14:43:44 [D] [server.go:2568] |      127.0.0.1| 200 |   1.067127ms|   match| GET      /     r:/

2017/11/03 14:43:44 [D] [default.go:16] home/get

2017/11/03 14:43:44 [D] [server.go:2568] |      127.0.0.1| 200 |    726.463µs|   match| GET      /     r:/

可以看到一共相应了五次,中间一次是/login。但是一般正常的时候,访问/login都是只有一次match的输出。

这次算是match到了/login。但是不是每次都能match到。这一点让我很困惑。


   



推荐阅读
  • 一、路由首先需要配置路由,就是点击good组件进入goodDetail组件配置路由如下{path:goodDetail,component:goodDetail}同时在good组件中写入如下点击事件,路由中加入 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 怎么在PHP项目中实现一个HTTP断点续传功能发布时间:2021-01-1916:26:06来源:亿速云阅读:96作者:Le ... [详细]
  • 本文讨论了如何在codeigniter中识别来自angularjs的请求,并提供了两种方法的代码示例。作者尝试了$this->input->is_ajax_request()和自定义函数is_ajax(),但都没有成功。最后,作者展示了一个ajax请求的示例代码。 ... [详细]
  • REVERT权限切换的操作步骤和注意事项
    本文介绍了在SQL Server中进行REVERT权限切换的操作步骤和注意事项。首先登录到SQL Server,其中包括一个具有很小权限的普通用户和一个系统管理员角色中的成员。然后通过添加Windows登录到SQL Server,并将其添加到AdventureWorks数据库中的用户列表中。最后通过REVERT命令切换权限。在操作过程中需要注意的是,确保登录名和数据库名的正确性,并遵循安全措施,以防止权限泄露和数据损坏。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • Python项目实战10.2:MySQL读写分离性能优化
    本文介绍了在Python项目实战中进行MySQL读写分离的性能优化,包括主从同步的配置和Django实现,以及在两台centos 7系统上安装和配置MySQL的步骤。同时还介绍了创建从数据库的用户和权限的方法。摘要长度为176字。 ... [详细]
  • Jboss的EJB部署描述符standardjaws.xml配置步骤详解
    本文详细介绍了Jboss的EJB部署描述符standardjaws.xml的配置步骤,包括映射CMP实体EJB、数据源连接池的获取以及数据库配置等内容。 ... [详细]
  • 我创建了一个新的AWSSSO(使用内部IDP作为身份源,因此不使用ActiveDirectory)。我能够登录AWSCLI、AWSGUI,但 ... [详细]
  • adfs是什么_培训与开发的概念
    adfs是什么_培训与开发的概念(如您转载本文,必须标明本文作者及出处。如有任何疑问请与我联系me@nap7.com)ADFS相关开发技术的中文资料相对匮乏,之前在弄这个东西的时候 ... [详细]
  • 现象:[root@localhost~]#dockerrun-d-p9000:80centos:httpdbinsh-cusrlocalbinstart.shd5b2bd5a7bc ... [详细]
  • NSD cisco高级路由与交换技术2014.8.12
    实验01:DHCP服务的应用实验目标:通过建立DHCP服务,给计算机自动分配地址实验环境:实验步骤:一、配置计算机pc8pc ... [详细]
  • 跨站的艺术XSS Fuzzing 的技巧
    作者|张祖优(Fooying)腾讯云云鼎实验室对于XSS的漏洞挖掘过程,其实就是一个使用Payload不断测试和调整再测试的过程,这个过程我们把它叫做F ... [详细]
author-avatar
韩铁衣
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有