gtoken icon indicating copy to clipboard operation
gtoken copied to clipboard

关于源码的一点疑问

Open apple1563 opened this issue 1 year ago • 1 comments

func (m *GfToken) Logout(r *ghttp.Request) {
	if !m.LogoutBeforeFunc(r) {
		return
	}

	// 获取请求token
	respData := m.getRequestToken(r)
	if respData.Success() {
		// 删除token
		m.RemoveToken(r.Context(), respData.DataString())
	}

	m.LogoutAfterFunc(r, respData)
}

在源码中,登出是要调用LogoutBeforeFunc和LogoutAfterFunc两个方法的,而我在运用的时候是没有配置这两个方法的,这两个方法打印出来的值为nil,神奇的是这两个函数没有实现,程序却能正常运行,没有panic? 是否golang在函数为nil的时候会自动跳过不执行?

apple1563 avatar Oct 08 '23 11:10 apple1563

https://github.com/goflyfox/gtoken/blob/master/gtoken/gtoken.go#L423 https://github.com/goflyfox/gtoken/blob/master/gtoken/gtoken.go#L429

hailaz avatar Dec 19 '23 03:12 hailaz