我有一个处理程序不起作用,但它应该与 ajax 需要方向一起使用。
样本:
from tornado.web import RequestHandler
class MyHandler(RequestHandler):
def get(self):
self.write("ok!")
如果不是 MyHandler == Ajax 请求,那么 Redirect "/" ??
谢谢你...
所以; 您可以使用的装饰器。创造
装饰器.py
添加 is_ajax 函数;
# decorators.py
def is_ajax(method):
@wraps(method)
def wrapper(self, *args, **kwargs):
if "X-Requested-With" in self.request.headers:
if self.request.headers['X-Requested-With'] == "XMLHttpRequest":
return method(self, *args, **kwargs)
else:
self.redirect("/")
return wrapper
和
from tornado.web import RequestHandler
from decorators import is_ajax
class MyHandler(RequestHandler):
@is_ajax # is_ajax decorators.
def get(self):
self.write("ok!")
看看这个:这个应该更容易理解: