0

我创建了一个 symfony2 网页,其中包含“/new”路由中的表单。用户将输入发布到控制器,控制器呈现“/create”,如果成功,则调用最终路由“/thankyou”并出现感谢页面。

我想禁用对 /thankyou 路由的直接访问,该路由只能通过成功的 /create POST 访问。这适用于 /create(为什么?)但不适用于 /thankyou。

4

2 回答 2

0

您可以根据推荐人信息在“/Thankyou”操作中添加一些条件:

$request->headers->get('referer');

或者您可以像@Florian 所说的那样在 url 中使用一些额外的参数。

于 2012-09-05T13:11:03.150 回答
0

在路由中添加 arequirements: _method: POST至少会限制对 POST 操作的访问。

但我不确定你如何才能实现只接受来自特定站点的 POST。也许使用作为您在控制器中检查的参数传递的特殊令牌可以解决问题。

于 2012-09-05T12:22:35.997 回答