vue 跨域請求處理
阿新 • • 發佈:2018-12-11
前言:最近做了一個前後端自己獨立開發的專案,前端使用Vue,後端使用Django,研究了一下django rest api 的跨域處理和許可權管理
跨域的問題前端也可以解決後端也可以解決:
如vue框架解決跨域問題是使用代理:
再:config => index.js檔案下
proxyTable: {
'/api': {
target: 'http://192.168.88.132:8000', //api埠
changeOrigin: true, //允許跨域
pathRewrite: {
'^/api' : 'preview'
}
}
},
pathRewrite可以是一個方法也可以是一個物件。
詳情見:vue跨域請求
Django跨域和後臺API許可權管理:
django使用restapi設定許可權管理:
詳見django跨域
但是還是會有csrf驗證不通過。這是rest的原因。所以需要將csrf關閉。只能寫一個middleware來關閉。
# coding:utf-8
from django.utils.deprecation import MiddlewareMixin
class DisableCSRF(MiddlewareMixin) :
def process_request(self, request):
setattr(request, '_dont_enforce_csrf_checks', True)