因为要对接上下游,不同的上游有不同的请求参数,处理参数这样
我的想法就是
rule.add("test1", test1func)
rule.add("test2", test2func)
然后 rule.handle(name, *args)
就自动路由到对应的 func 里面去
有没有什么类库可以方便的支持这个的,本来看到了一个 dispatcher, 但是 dispatcher
是根据类型来的
1
vissssa 2020-08-26 13:43:18 +08:00
反向代理?
|
2
xiri 2020-08-26 14:09:29 +08:00
我感觉你这需求跟装饰器有点像
|
3
Vegetable 2020-08-26 14:15:33 +08:00
你代码都快写完了,就是基于字典写一个简单的类就行了
|
4
Ricardoo 2020-08-26 15:54:14 +08:00
参照 functools 中的 singledispatch,写个装饰器把类型改成普通的值就可以了
|
5
imn1 2020-08-26 16:45:05 +08:00
1.一对一,字典
2.多对几,就是参数有分类,bisect,不过要自己处理无序参数变成有序 3.参看#4 4.状态机 5.如果是类,动态继承 |
6
abersheeran 2020-08-26 17:26:07 +08:00
如果 name 的字符串里不存在通配符号,那么直接用 dict 就行了。哈希挺快的。
如果有通配符,可以用 RadixTree,https://github.com/abersheeran/index.py/blob/master/indexpy/routing/tree.py |