Vue+Django REST framework 打造生鮮電商項目 中 6~

虛擬環(huán)境依賴

微信截圖_20171205110941.png
  • 11:10開始第六章

6-1

urls -views-serializers

6-3

微信截圖_20171205133727.png
跨域的問題
  1. 安裝
pip install django-cors-headers
  1. 配置setting的apps
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'DjangoUeditor',
    'users.apps.UsersConfig',
    'goods.apps.GoodsConfig',
    'trade.apps.TradeConfig',
    'user_operation.apps.UserOperationConfig',
    'crispy_forms',
    'django_filters',
    'xadmin',
    'rest_framework',
    'corsheaders',


]

配置 'corsheaders.middleware.CorsMiddleware',這個配置要在前.

MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

CORS_ORIGIN_ALLOW_ALL = True

7-1 登錄

  1. 設(shè)置setting
REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.BasicAuthentication',
        'rest_framework.authentication.SessionAuthentication',
    ),
    # 'DEFAULT_THROTTLE_CLASSES': (
    #     'rest_framework.throttling.AnonRateThrottle',
    #     'rest_framework.throttling.UserRateThrottle'
    # ),
    # 'DEFAULT_THROTTLE_RATES': {
    #     'anon': '2/minute',
    #     'user': '3/minute'
    # }
}

  1. 添加rest_framework.authtoken到apps,特別注意逗號.
INSTALLED_APPS = [
    'django.contrib.admin',
    'rest_framework.authtoken',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'DjangoUeditor',
    'users.apps.UsersConfig',
    'goods.apps.GoodsConfig',
    'trade.apps.TradeConfig',
    'user_operation.apps.UserOperationConfig',
    'crispy_forms',
    'django_filters',
    'xadmin',
    'rest_framework',
    'corsheaders',


]
  • 需要生成表的,makemigrations,migrate.
  1. urls添加
 url(r'^api-token-auth/', views.obtain_auth_token),

微信截圖_20171205200208.png

再用token測試登錄.

  1. setting
REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.BasicAuthentication',
        'rest_framework.authentication.SessionAuthentication',
        'rest_framework.authentication.tokenAuthentication',
    ),
    # 'DEFAULT_THROTTLE_CLASSES': (
    #     'rest_framework.throttling.AnonRateThrottle',
    #     'rest_framework.throttling.UserRateThrottle'
    # ),
    # 'DEFAULT_THROTTLE_RATES': {
    #     'anon': '2/minute',
    #     'user': '3/minute'
    # }
}
微信截圖_20171205202310.png
微信截圖_20171205202340.png
微信截圖_20171205204201.png

7-4 Json web token的原理

7-5 操作

  1. 虛擬環(huán)境安裝jwt
pip install djangorestframework-jwt
  1. 設(shè)置
REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
        'rest_framework.authentication.BasicAuthentication',
        'rest_framework.authentication.SessionAuthentication',
        # 'rest_framework.authentication.TokenAuthentication',

    ),

}
  1. Urls配置
    url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
    #drf自帶
    # url(r'^api-token-auth/', views.obtain_auth_token),
    #jwt
    url(r'^api-token-auth/', obtain_jwt_token),

成果: 用postman測試登錄成功.

微信截圖_20171205212821.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 3-1項目初始化 虛擬環(huán)境目錄 *設(shè)置數(shù)據(jù)庫 options后面第三方登錄要用.運行提示 需要安裝mysqlcli...
    呂陽閱讀 2,986評論 7 6
  • 8-1 viewset實現(xiàn)詳情頁接口 8-2 熱賣商品接口實現(xiàn) models中is_hot字段,使用過濾查詢goo...
    呂陽閱讀 1,704評論 0 0
  • 刷知乎的時候看到有人在問低智商的人未來怎樣發(fā)展的問題,看了好多答案都混淆了智商低和成績差的概念,大部分的人都認(rèn)...
    悠然之春閱讀 2,253評論 13 5
  • 曾經(jīng)的林蔭化作一段萎枯的落葉,歌聲如鈴的清溪斷送在凋敗的長木,再也走不回去的稻香之野,陌生地前陳在我模糊的眼角邊,...
    雨聽風(fēng)喃閱讀 262評論 0 0
  • 大家有了解過小紅書嗎? 反正我的護膚品基本都在里面買的[壞笑] 這真的是個好用物品的分享地哦 優(yōu)彈素效果到底有多好...
    like燕閱讀 403評論 0 0

友情鏈接更多精彩內(nèi)容