首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >当index.html由nginix提供服务时,从Django获取CSRF令牌

当index.html由nginix提供服务时,从Django获取CSRF令牌
EN

Stack Overflow用户
提问于 2018-07-19 17:54:25
回答 1查看 405关注 0票数 3

我有一个带有Django后端的React SPA。与大多数SPA一样,需要提供index.html文件。但问题是这个文件是使用nginx服务的,所以用户没有获得进行api调用所需的csrf令牌。我真的不想提供静态服务,因为它需要将文件从npm run build输出的其余部分中分离出来,并打破“只将其放入/ index.html /目录”的工作流,同时也出于缓存的原因。是否有其他解决方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-19 22:55:29

CSRF令牌总是随着每次页面加载而更新。它必须由django提供服务,因为django是提供和验证它的应用程序。将index.html文件放在django templates文件夹中,将其与索引视图一起使用,将CSRF标记转换为javascript代码并在ReactJS代码中使用它

index.html

代码语言:javascript
复制
...
<body>
<script>
     var csrftoken = '{{ csrf_token }}';
</script>
...
</body>
...
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51419578

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档