Size: a a a

Django [ru] #STAY HOME

2019 March 01

АЯ

Александр Янин in Django [ru] #STAY HOME
да
источник

DT

Dan Tyan in Django [ru] #STAY HOME
точно?
источник

АЯ

Александр Янин in Django [ru] #STAY HOME
источник

DT

Dan Tyan in Django [ru] #STAY HOME
у тебя и модель и форма имеют одинаковое имя
источник

АЯ

Александр Янин in Django [ru] #STAY HOME
да
источник

DT

Dan Tyan in Django [ru] #STAY HOME
не надо так
источник

АЯ

Александр Янин in Django [ru] #STAY HOME
всё понял) спасибо
источник

DT

Dan Tyan in Django [ru] #STAY HOME
ты когда делаешь импорт то что последнее импортируешь то и будет под этим именем
источник

DT

Dan Tyan in Django [ru] #STAY HOME
ну и у тебя ошибка в классе формы =)
источник

АЯ

Александр Янин in Django [ru] #STAY HOME
я исправил) всё норм) спасибо)
источник

AK

Alibek Kaparov in Django [ru] #STAY HOME
Привет. Есть 2 дев сервера - первый джанго с DRF, другой на vue (опрашивает джанго на axios). Как мне сделать так, чтобы не было 403 из-за csrf? Куда мне закидывать токен в запрос? На фронте написал функцию входа, возвращает session key, как его использовать на axios?
источник

AT

Alex Ted in Django [ru] #STAY HOME
cors headers
источник

IL

Ivan Lavrenov in Django [ru] #STAY HOME
Alibek Kaparov
Привет. Есть 2 дев сервера - первый джанго с DRF, другой на vue (опрашивает джанго на axios). Как мне сделать так, чтобы не было 403 из-за csrf? Куда мне закидывать токен в запрос? На фронте написал функцию входа, возвращает session key, как его использовать на axios?
написать middleware и в headers запроса вставлять
 
response["Access-Control-Allow-Origin"] = "*"
response["Access-Control-Allow-Headers"] = "Origin, X-Requested-With, Content-Type, Accept, Authorization"
источник

IL

Ivan Lavrenov in Django [ru] #STAY HOME
Alibek Kaparov
Привет. Есть 2 дев сервера - первый джанго с DRF, другой на vue (опрашивает джанго на axios). Как мне сделать так, чтобы не было 403 из-за csrf? Куда мне закидывать токен в запрос? На фронте написал функцию входа, возвращает session key, как его использовать на axios?
ну или еще можно отключить csrf просто
источник

AK

Alibek Kaparov in Django [ru] #STAY HOME
проблема не в корсе, фронт серв может посылать запросы на бэк
источник

AK

Alibek Kaparov in Django [ru] #STAY HOME
С фронта можно залогиниться, на session auth. Он возвращает session key, который я храню в localStorage
источник

AK

Alibek Kaparov in Django [ru] #STAY HOME
в доке к дрф для использования сессии нужно указвать csrf token, а причем тогда тут ключ?
источник

AK

Artyem Klimenko in Django [ru] #STAY HOME
Alibek Kaparov
С фронта можно залогиниться, на session auth. Он возвращает session key, который я храню в localStorage
csrf решает проблему когда ключ сессии храниться в куках и автоматом передаётся с каждым запросом, у вас он в localStorage, так как он на сервак передаётся?
источник

AK

Alibek Kaparov in Django [ru] #STAY HOME
Это может показать глупым, но session key с csrf я отправляю так (решил юзать fetch api)

`
get() {
               fetch('http://test.localhost:8000/v1/sd/forms/', {
                   mode: "no-cors",
                   headers: {
                       "X-CSRFToken": "lvrcmdMidgV8jE9JqhXBYPoS4OfsWWpaWJ2Tnc7bA1zjJtyuyaXHVRRzL9SqVC3z",
                       "Token": ${localStorage.getItem('csrf')},
                       "Content-Type": "application/json"
                   }
               })
                   .then(response => response.json())
                   .then(data => console.log(data))
                   .catch(err => console.error(err))
           }
`
источник

AK

Artyem Klimenko in Django [ru] #STAY HOME
localStorage.getItem('csrf') - это ключ сессии как понимаю?
источник