Python 禁止使用React和axios(未设置CSRF cookie)
我一直在使用React中的登录组件,该组件可以将用户名和密码信息发送到django主机127.0.0.1:8000/api auth/login/,当我尝试发送时,django服务器显示此消息“禁止(未设置CSRF cookie)。:/api auth/login/” 我曾尝试在我的应用程序设置中检查django cors选项,但没有任何效果,我还尝试在post请求中发送一些标题 这是我的cors设置Python 禁止使用React和axios(未设置CSRF cookie),python,reactjs,django-rest-framework,Python,Reactjs,Django Rest Framework,我一直在使用React中的登录组件,该组件可以将用户名和密码信息发送到django主机127.0.0.1:8000/api auth/login/,当我尝试发送时,django服务器显示此消息“禁止(未设置CSRF cookie)。:/api auth/login/” 我曾尝试在我的应用程序设置中检查django cors选项,但没有任何效果,我还尝试在post请求中发送一些标题 这是我的cors设置 CORS\u ALLOW\u CREDENTIALS=True CORS_原产地_白名单=(
CORS\u ALLOW\u CREDENTIALS=True
CORS_原产地_白名单=(
'http://localhost:3000',
)
CORS\u允许\u头=(
“csrftoken”,
“内容类型”,
“X-CSRFTOKEN”
)
CSRF\u COOKIE\u NAME=“csrftoken”
CSRF_头_名称='X-CSRFTOKEN'
这是我的发帖请求
handleSubmit = event =>{
var csrfCookie = Cookies.get('csrftoken');
console.log('csrf cookie: ', csrfCookie); // set to undefined
axios.defaults.xsrfHeaderName = "X-CSRFTOKEN";
axios.defaults.xsrfCookieName = "csrftoken";
axios.defaults.withCredentials = true;
axios
.post( 'http://127.0.0.1:8000/api-auth/login/', {
username : this.state.username,
password : this.state.password
},{
headers: {"csrftoken": csrfCookie},
})
.then(res => console.log('Results: ' + res))
.catch(err => console.log('Login error: ' + err))
}
注意:我的任何视图上都没有
@csrf\u豁免
请将csrf\u COOKIE\u SECURE=True
添加到您的设置文件中它不起作用。我想这可能和Cookies有关。get('csrftoken'),但我不知道如何修复它。您找到解决方案了吗?我有一个类似的问题。。。