django使用ajaxpost數(shù)據(jù)出現(xiàn)403錯(cuò)誤怎么辦-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)django使用ajax post數(shù)據(jù)出現(xiàn)403錯(cuò)誤怎么辦,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

葫蘆島ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!

具體內(nèi)容請(qǐng)看下文。

方法一:

如果用jQuery來(lái)處理ajax的話,Django直接送了一段解決問(wèn)題的代碼。把它放在一個(gè)獨(dú)立的js文件中,在html頁(yè)面中都引入即可。注意這個(gè)js文件必須在jquery的js文件引入之后,再引入即可

$(document).ajaxSend(function(event, xhr, settings) { 
 function getCookie(name) { 
  var cookieValue = null; 
  if (document.cookie && document.cookie != '') { 
   var cookies = document.cookie.split(';'); 
   for (var i = ; i < cookies.length; i++) { 
    var cookie = jQuery.trim(cookies[i]); 
    // Does this cookie string begin with the name we want? 
    if (cookie.substring(, name.length + ) == (name + '=')) { 
     cookieValue = decodeURIComponent(cookie.substring(name.length + )); 
     break; 
    } 
   } 
  } 
  return cookieValue; 
 } 
 function sameOrigin(url) { 
  // url could be relative or scheme relative or absolute 
  var host = document.location.host; // host + port 
  var protocol = document.location.protocol; 
  var sr_origin = '//' + host; 
  var origin = protocol + sr_origin; 
  // Allow absolute or scheme relative URLs to same origin 
  return (url == origin || url.slice(, origin.length + ) == origin + '/') || 
   (url == sr_origin || url.slice(, sr_origin.length + ) == sr_origin + '/') || 
   // or any other URL that isn't scheme relative or absolute i.e relative. 
   !(/^(\/\/|http:|https:).*/.test(url)); 
 } 
 function safeMethod(method) { 
  return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method)); 
 } 
 if (!safeMethod(settings.type) && sameOrigin(settings.url)) { 
  xhr.setRequestHeader("X-CSRFToken", getCookie('csrftoken')); 
 } 
});

方法二:

在處理post數(shù)據(jù)的view前加@csrf_exempt裝飾符

例如

@csrf_exempt 
def profile_delte(request): 
 del_file=request.POST.get("delete_file",'')

關(guān)于“django使用ajax post數(shù)據(jù)出現(xiàn)403錯(cuò)誤怎么辦”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

文章標(biāo)題:django使用ajaxpost數(shù)據(jù)出現(xiàn)403錯(cuò)誤怎么辦-創(chuàng)新互聯(lián)
文章鏈接:http://muchs.cn/article10/ddoedo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、軟件開(kāi)發(fā)外貿(mào)網(wǎng)站建設(shè)、Google微信公眾號(hào)、服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)