原文链接:
https://blog.dianduidian.com/post/gin-%E4%B8%AD%E9%97%B4%E4%BB%B6next%E6%96%B9%E6%B3%95%E5%8E%9F%E7%90%86%E8%A7%A3%E6%9E%90/- 中间件代码最后即使没有调用
Next()
方法,后续中间件及handlers
也会执行; - 如果在中间件函数的非结尾调用
Next()
方法当前中间件剩余代码会被暂停执行,会先去执行后续中间件及handlers
,等这些handlers
全部执行完以后程序控制权会回到当前中间件继续执行剩余代码; - 如果想提前中止当前中间件的执行应该使用
return
退出而不是Next()
方法; - 如果想中断剩余中间件及handlers应该使用
Abort
方法,但需要注意当前中间件的剩余代码会继续执行。
0 评论:
发表评论