1. Vue前端请求数据方法
this.$ajax.post('/api/login', this.qs.stringify(this.validateForm)).then( res => {
if (res.data.status == 0)
{
this.dialogVisible = false;
window.location.reload()
}
}).catch( res => {
})
- this.$ajax,这个是在main.js中已经声明了的
- 在上节Vue跨域设置中,将/api替代了http://127.0.0.1:8081/horizon
- this.qs.stringify,qs已经在main.js中声明了,这条语句将json格式的内容封装成表单格式,发送给后端,如果不这样做,后端收不到要提交的内容。
2. 后端django接收数据方法
@csrf_exempt
def login(request):
username = request.POST.get('username')
user_domain_name = request.POST.get('domain')
password = request.POST.get('password')
@csrf_exempt
这个必须要有,否则跨域不了
- 暴露出url
编辑horizon/urls.py加入url
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
path('login',views.login, name='login'),
]
注意:
下一节内容:django调用openstack api(keystone)