lapis 路由
  TEZNKK3IfmPf 2023年11月14日 25 0
1. 路由以及url 模式
参考如下:
local lapis = require("lapis")
local app = lapis.Application()

app:match("/", function(self) end) // 必须的
app:match("/hello", function(self) end)
app:match("/users/all", function(self) end)
2. 带参数的路由格式
// 包含请求参数的 使用: 

app:match("/page/:page", function(self)
  print(self.params.page)  // 打印输出参数, 比如 /page/dalong  输出  {page:"dalong"}
end)

// 可选路由参数(使用括号)
/projects/:username(/:project)

// * 符号,匹配尽可能多的参数,说白了,就是url 参数中其余的
                    
app:match("/browse/*", function(self)
  print(self.params.splat)
end)
app:match("/user/:name/file/*", function(self)
  print(self.params.name, self.params.splat)
end)
3. 路由优先级
a. 完全匹配 /hello/world
b. 变量路由 /hello/:variable
c. 统配路由 /hello/*
4. 别名路由(结合self:url_for  类似路由的别名)
// 参考如下:
local lapis = require("lapis")
local app = lapis.Application()

app:match("index", "/", function(self)
  return self:url_for("user_profile", { name = "leaf" })
end)

app:match("user_profile", "/user/:name", function(self)
  return "Hello " .. self.params.name .. ", go home: " .. self:url_for("index")
end)
 
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年03月29日   104   0   0 静态路由
  TEZNKK3IfmPf   2023年11月14日   25   0   0 路由
  TEZNKK3IfmPf   2023年11月13日   28   0   0 OSPF路由
  TEZNKK3IfmPf   2023年11月13日   21   0   0 路由
  TEZNKK3IfmPf   2023年11月14日   40   0   0 rabbitmq路由
  TEZNKK3IfmPf   2023年11月14日   35   0   0 vue路由
  TEZNKK3IfmPf   2023年11月13日   16   0   0 路由
  TEZNKK3IfmPf   2023年11月14日   18   0   0 django路由
  TEZNKK3IfmPf   2023年11月13日   22   0   0 路由
  TEZNKK3IfmPf   2023年11月14日   22   0   0 路由
TEZNKK3IfmPf