Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript从页面获取csrf令牌_Javascript_Html - Fatal编程技术网

使用javascript从页面获取csrf令牌

使用javascript从页面获取csrf令牌,javascript,html,Javascript,Html,我正在尝试使用javascript从Django支持的网页中提取csrf令牌 我的html模板如下所示: <div class = "debugging"> <p id = "csrf">{% csrf_token %}</p> </div> 两者都返回“未定义” 感谢您的帮助 您的django似乎创建了一个保存您的令牌的输入元素,因此只需使用querySelector选择该元素并读取其值即可: var csrfToken = documen

我正在尝试使用javascript从Django支持的网页中提取csrf令牌

我的html模板如下所示:

<div class = "debugging">
  <p id = "csrf">{% csrf_token %}</p>
</div>
两者都返回“未定义”


感谢您的帮助

您的django似乎创建了一个保存您的令牌的输入元素,因此只需使用
querySelector
选择该元素并读取其
值即可:

var csrfToken = document.querySelector("#csrf input").value;
由于django代码也会在该输入元素上生成一个
name=“csrfmiddlewaretoken”
,因此您还可以执行以下操作:

var csrfToken = document.getElementsByName('csrfmiddlewaretoken')[0].value;

我在新拉威尔试过这个。它是Vanilla JS,可以在任何地方调用。在JS或刀片文件中

var csrf = document.querySelector('meta[name="csrf-token"]').content;
var csrfToken = document.querySelector("#csrf input").value;
var csrfToken = document.getElementsByName('csrfmiddlewaretoken')[0].value;
var csrf = document.querySelector('meta[name="csrf-token"]').content;