我有一个登录页,其中显示了一个登录表单。提交时,页面会将数据发送到自身进行验证。如果验证成功,用户将被重定向到另一个页面。我认为这就是中讨论的POST/REDIRECT/GET方法。
以下是当我成功登录时,在Chrome开发者控制台看到的网络标签:
Name Method Status
login POST 303 See Other
profile GET 200 OK
当我点击“后退”按钮,而不是返回登录表单页面时,我不太明白为什么Google Chrome 28.0仍然要求“确认表单重新提交”。Firefox似乎没有这个问题。这种情况下的预期行为是什么?
我有一个带有表单的Django页面。我有一些视图代码,它处理表单作为正常,但预填充表单的初始数据来自用户的会话,如果可用。这是因为当用户返回到该表单时,他们会看到以前选择的选项(是的,该表单非常广泛)。
我的观点,py:
def myView(request):
...
form = ProjectInfoForm(request.POST or None)
if form.is_valid():
# process form, including a redirect
...
# if there is form dat
如果表单验证失败,我想将人们重定向到某个页面。然而,我不太明白是怎么做到的。
如果我在下面的redirect HERE注释中重定向人们,它也会在加载表单时进行重定向,并导致无限循环。
public function create() {
$this->form_validation->set_rules('email_adress', 'E-mail', 'required|valid_email|is_unique[users.email_adress]');
if ($this->form_validat
我使用的是cakephp版本4,这里我在中间件中添加了csrf。
use Cake\Http\Middleware\CsrfProtectionMiddleware;
public function middleware(MiddlewareQueue $middlewareQueue): MiddlewareQueue
{
$csrf = new CsrfProtectionMiddleware();
$middlewareQueue->add($csrf)
return $middlewareQueue;
}
在检查器元素中,我看到了