欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

vue django csrftoken

錢浩然1年前8瀏覽0評論

Vue和Django都是十分流行的Web開發框架。而在使用Vue和Django的時候,一個重要的問題就是如何處理csrf(Cross-site request forgery)。

csrf攻擊是指攻擊者偽造請求,從而達到在未授權的情況下進行一些惡意操作的目的。而csrf防御機制的實現是:在服務端生成一個csrf_token,將其放入到session中,在每個form提交時,將這個csrf_token隨著form的數據一起發到服務端。如果這個發來的csrf_token與服務端session中的csrf_token不匹配,則表明這個form是偽造的而被拒絕。

在使用Vue和Django的時候,很多人搞不清楚csrf_token的生成與處理,以下是一些經驗總結:

# Django中獲取csrf_token
{% csrf_token %}

這會在生成html文件時插入一個input標簽,如下:

<input type="hidden" name="csrfmiddlewaretoken" value="VX3biI1r5GcxwocMoDdtM7kgNNqV1XWX">

在Vue中,需要在請求api時手動添加csrf_token:

import axios from 'axios';
axios.defaults.headers.common['X-CSRFToken'] = document.querySelector('input[name=csrfmiddlewaretoken]').value;
export default {
fetchData() {
return axios.get('/api/');
},
};

此處需要注意的是,添加csrf_token的代碼要放在axios的初始化代碼之前。

以上就是如何在Vue和Django中使用csrf_token的簡介,如有不當之處,請指正。