Prestashop 1.7.1.1:为 AJAX 调用创建有效令牌并验证它

Prestashop 1.7.1.1: Create a valid token for AJAX calls and validate it

我正在尝试在 Prestaphop 1.7.1.1 上创建一个安全的 ajax 调用 following this instrucctions.

<?php
// In your form use:
<input type="hidden" value="{Token::getToken()}">

// In your module controller, in postProcess (or some other methods who is made for data validation) check:

if (!$this->isTokenValid()) {
    // Ooops! Token is not valid!
    die('Token is not valid, hack stop');

但是 {Token::getToken()} 不存在。我正在创建一个新的管理模块,而不是前端模块。

我如何创建令牌并在 prestashop 1.7.1.1 上检查它

抱歉,class Token 从未存在过(据我所知)...

在您的表单中试试这个:

<input type="hidden" value="{Tools::getAdminTokenLite('AdminModules')} name="token">

然后在您的 ajax 调用中检索它(我假设您的代码):

$.ajax({
    ...
    data : {
        token : $('#yourform').find('input[name="token"]').val()
    },
    ...
});

希望对您有所帮助 ;)