路飛項目一:vue安裝及介紹

跨域問題:

-同源策略(瀏覽器的安全策略)
            -只允許當前頁面朝當前域下發請求,如果向其他域發請求,請求可以正常發送,數據也可以拿回,但是被瀏覽器攔截了

        域名與端口都不一樣的話,是無法接收拿過來的數據的

        -cors:只要服務器實現了CORS,就可以實現跨域資源共享
            -簡單請求
                -只發一次請求
            -非簡單請求:
                -發兩次請求:一次預檢(OPTION請求),只有服務端允許發請求,才能繼續發第二次正常請求,一次真正的請求


如何使用:

點擊事件端(有ajax請求過去的一端)

django

settings.py

STATIC_URL = '/static/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static')
]

項目下創建目錄 pro12_21\static\存放jquery-3.3.1.js文件

urls.py

url(r'^index/', views.index),

views.py

def index(request):
    return render(request,'index.html')

templates\index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="/static/jquery-3.3.1.js"></script>
    <title>Title</title>
</head>
<body>
<button id="btn">點我</button>
</body>
<script>
    $('#btn').click(function () {
        $.ajax({
            url:'http://127.0.0.1:8000/click/',
            type:'get',
            success:function (data) {
                console.log(data)
                alert(data)
            }
        })
    })
</script>
</html>


測試有數據的一端:

urls.py

url(r'^click/', views.click),

views.py

def click(request):
    print(" this is click")
    ret = HttpResponse('click')
    ret['Access-Control-Allow-Origin'] = ' # 允許訪問過來的域 
    return ret



測試:成功。

圖片.png

報錯

圖片.png

一、安裝vue及創建項目:

1、首先裝Node.js

下載:http://cdn.npm.taobao.org/dist/node/v10.14.2/node-v10.14.2-x64.msi

接着下一步,下一步,ok,

linux:

解壓,配置環境變量OK,(這裏不再敘述)

創建vue項目:

在指定的目錄中創建項目:

cd "vue-project"

清除緩存記錄

npm cache clean --force    

開始創建:

vue create pro_1 (項目名)

也可以ui 創建

vue ui (運行後輸入url創建項目名)

圖片.png

二、pycharm 配置vue.js插件

File--setting--->plugins--->搜索vue.js 安裝後,點擊Ok,之後會重啓pycharm 即可。

圖片.png

Pycharm 配置 運行

圖片.png

圖片.png

三、vue 目錄結構

-node_modules:項目依賴(以後項目要傳到git上,這個不能傳)
        -publish--->index.html  是總頁面
        -src :項目
            -assets:靜態資源
            -components:組件
            -views:視圖組件
            -APP.vue:根組件
            -main.js :總的入口js
            -router.js :路由相關,所有路由的配置,在這裏面
            -store.js  :vuex狀態管理器
        -package.json:項目的依賴,npm install 是根據它來安裝依賴的
    每個組件會有三部分:
        -template
        -style
        -script

四、axios的使用

vue的項目中安裝axios

npm install axios

安裝完後,package.json文件中會有axios,以及對應的版本


在django項目中新建立一個項目,配置:

settings.py

INSTALLED_APPS=[]中添加:

rest_framework   支持rest_framework 

urls.py

url(r'^course/',views.course.as_view())

views.py

from django.shortcuts import render

# Create your views here.
from rest_framework.views import APIView
from rest_framework.response import Response
class course(APIView):
    def get(self,request,*args,**kwargs):
        return Response(['python','linux'])

啓動後打開鏈接:

http://localhost:8000/course/

http://localhost:8000/course/?format=json 使用json格式打開 





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章