Маркер CSRF с URL работает, но CSRF с параметром формы недопустим - PullRequest
0 голосов
/ 07 ноября 2019

токен csrf с параметром формы не работает.

params = {
                title: screen.getTitle(),
                windowId: screen.getId(),
                filter: filter,
                sort: sort,
                items: items.toString(),
                _csrf : Manh._csrfConfig.value
            }


form.submit({
                url: url,
                params: params
            });

, но с URL

url = url + '?windowId=' + screen.getId() + '&_csrf=' + Manh._csrfConfig.value; 

работает. Я не хочу отправлять токен csrf с URL. Пожалуйста, предложите.

<oauth>
<error_description>
Invalid CSRF Token 'null' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'.
</error_description>
<error>access_denied</error>
</oauth>

1 Ответ

0 голосов
/ 08 ноября 2019

вот рабочий пример https://fiddle.sencha.com/#view/editor&fiddle/311c

Таким образом, в основном в вашем коде вам нужно добавить заголовки к form.submit методу

form.submit({
   url: url,
   headers: {
       'X-CSRF-Token': 'Token'    
   },
   params: params //params without token in them
})
...