librelist archives

« back to archive

bamboo中潜在可利用的一个feature

bamboo中潜在可利用的一个feature

From:
Tang Daogang
Date:
2011-09-16 @ 04:07
刚才在调试filter chains的参数传递的时候,无意间发现一个bamboo(准确说是lua)的一个潜在的可利用的特性:

可以在path级别的多次请求之间保持状态!

即对写一个path请求,可以在下次请求的时候,访问本次请求遗留(故意为之)的一些中间数据。

利用这个特性,我们可以实现如下级别的状态保持(对同一个进程来说):

   1. 全局scope。只需声明一个全局变量或模块全局变量。所有的函数,所有的path都可以访问到;
   2. 模块scope。Bamboo中可以提供一个表容器出来,给模块中的所有path filter和handler调用;
   3. path scope。Bamboo中可以提供一个表容器出来,给应用调用。只有同一个path的filter和handler可以访问到;

但是,这并不是状态编程。与bamboo之前试验的状态编程概念还是不一样的。

如上,有机会将这个特性用起来。


-- 
Nothing is impossible.