0

我写了一个基于 symfony 的网站。有一些弹出窗口(注册、登录、更改密码)。我只需通过请求http://example.com/module/action即可使用 jQuery AJAX 请求 ($.get) 加载它们。尽管弹出窗口正确加载了 html,但http://example.com/module/action上没有正常请求的脚本。

有人知道如何禁用这个 symfony 功能吗?或者知道优雅的解决方法?

4

2 回答 2

0

为您的路线添加限制:

route_name:
  url: route_path.:sf_format
  # sf_format: json sets default format to json
  param: { module: module_name, action: action_name, sf_format: json }
  # add restrictions
  requirements:
    sf_format: json

由 Pedro @pedro-casado 提供的解决方案非常好(我在以前的一些项目中使用过),但一段时间后,我意识到,正确的方法是对路线添加限制。这样,Symfony 会简单地拒绝所有请求,除了 XmlHttpRequest。

于 2012-05-22T20:35:50.753 回答
-1

您是否希望仅在通过 ajax 调用时才加载页面?

if ($request->isXmlHttpRequest())
{
 ....
}
于 2012-05-21T22:34:46.117 回答