在django中使用post方法時(shí),需要增加csrftoken的例子
從百度查到在django中,使用post方法時(shí),需要先生成隨機(jī)碼,以防止CSRF(Cross-site request forgery)跨站請(qǐng)求偽造,并稍加修改:
注:這是一個(gè)js文件,需要引入到html模板中:<script src="/static/javascript/post_need_csrftoken.js"></script>
這樣做比使用{% csrf_token %}方便
$(function () { $.ajaxSetup({ headers: { "X-CSRFToken": getCookie("csrftoken") } }); }); // 為防止CSRF(Cross-site request forgery)跨站請(qǐng)求偽造,發(fā)post請(qǐng)求時(shí)需要在cookie中創(chuàng)建隨機(jī)碼 function getCookie(name) { var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); /* 上面這句話相當(dāng)于: var arr; var reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); */ if(arr=document.cookie.match(reg)) return decodeURI(arr[2]); //ECMAScript v3 已從標(biāo)準(zhǔn)中刪除了 unescape() 函數(shù),并反對(duì)使用它, // 因此應(yīng)該用 decodeURI() 和 decodeURIComponent() 取而代之。 else return null; }
補(bǔ)充知識(shí):Django解決前端/客戶端POST失敗提示csrf_tokenxxx的問題
解決:把settings.py里把MIDDLEWARE中的
django.middleware.csrf.CsrfViewMiddleware
刪除掉就好了
如果你不想刪除,并且你是web端的話,在form表單里加一句 {%csrf_token%} 就好了
<form> {%csrf_token%} <!-- 其它代碼 --> </form>
這個(gè)CRSF主要也是起一種保護(hù)驗(yàn)證的作用,看個(gè)人需要來(lái)保留吧
如果是安卓或者其它端,建議之間采取前者把那行代碼刪掉就行了
以上這篇在django中使用post方法時(shí),需要增加csrftoken的例子就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于numpy中eye和identity的區(qū)別詳解
今天小編就為大家分享一篇關(guān)于numpy中eye和identity的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2019-11-11Python中join函數(shù)簡(jiǎn)單代碼示例
這篇文章主要介紹了Python中join函數(shù)簡(jiǎn)單代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01Python+tkinter實(shí)現(xiàn)樹形圖繪制
Treeview是ttk中的樹形表組件,功能十分強(qiáng)大,非常適用于系統(tǒng)路徑的表達(dá),下面我們就來(lái)看看如何利用這一組件實(shí)現(xiàn)樹形圖的繪制吧,有需要的可以參考下2023-09-09python實(shí)現(xiàn)多層感知器MLP(基于雙月數(shù)據(jù)集)
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)多層感知器MLP,基于雙月數(shù)據(jù)集,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01基于Python實(shí)現(xiàn)定時(shí)自動(dòng)給微信好友發(fā)送天氣預(yù)報(bào)
這篇文章主要介紹了基于Python實(shí)現(xiàn)定時(shí)自動(dòng)給微信好友發(fā)送天氣預(yù)報(bào)的實(shí)現(xiàn)代碼,,需要的朋友可以參考下2018-10-10初學(xué)python數(shù)學(xué)建模之?dāng)?shù)據(jù)導(dǎo)入(小白篇)
本篇文章是小白篇初學(xué)python的同學(xué)可以來(lái)共同學(xué)習(xí)了,本篇文章主要講解了python數(shù)學(xué)建模過程中的第一步數(shù)據(jù)導(dǎo)入,數(shù)據(jù)導(dǎo)入是所有數(shù)模編程的第一步,比你想象的更重要2021-08-08Django如何實(shí)現(xiàn)網(wǎng)站注冊(cè)用戶郵箱驗(yàn)證功能
這篇文章主要介紹了Django如何實(shí)現(xiàn)網(wǎng)站注冊(cè)用戶郵箱驗(yàn)證功能,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08python對(duì)矩陣進(jìn)行轉(zhuǎn)置的2種處理方法
這篇文章主要介紹了python對(duì)矩陣進(jìn)行轉(zhuǎn)置的2種處理方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Python 爬蟲之超鏈接 url中含有中文出錯(cuò)及解決辦法
這篇文章主要介紹了Python 爬蟲之超鏈接 url中含有中文出錯(cuò)及解決辦法的相關(guān)資料,出現(xiàn)UnicodeEncodeError: 'ascii' codec can't encode characters,的錯(cuò)誤解決辦法,需要的朋友可以參考下2017-08-08