我正在为REST构建一个原型框架,要求URI匹配特定类型。不同类型的URI如下:
u:= /{name}
/{name}/create
/{name}/delete
/{name}/{id}
/{name}/{id}/update
/{name}/{id}/delete
and combinations such as,
[/{name}/{id}]u
'name' belongs to a well defined set
and 'id' is a regular expression of the type: [A-Z][a-z][0-9]+
示例如下:/ blogs / 1234 / entries / 567 / update
正如您所看到的,我可以将URI链接起来形成复杂的URI。
我的问题是,是否有一个良好的数据结构,我可以实现/使用它来处理这个要求。我现在的尝试有点模糊,不确定这是最好的方法。
当然,我已经使用蛮力技术很好地工作了,但是对于处理这个问题的有效方法,我真的想要一些指导。
答案 0 :(得分:0)
您的URI构成了常规语言(假设{name}
是常规语言,我猜它是有限的),因此您可以创建一个有限状态自动机来解析它们。