欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django項(xiàng)目中使用JWT的實(shí)現(xiàn)代碼

 更新時(shí)間:2019年11月04日 14:42:23   作者:發(fā)飆的蝸牛222  
這篇文章主要介紹了Django項(xiàng)目中使用JWT的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1.requiremwnts:

  • Django版本:2.2
  • python版本:3.6
  • djangorestframework版本:3.1
  • djangorestframework-jwt版本:1.11
  • MySQL版本:5.7

注意:使用Django 2.1以上的版本,MySQL數(shù)據(jù)庫(kù)必須在5.5以上的版本。

2.新建項(xiàng)目

1)使用pycharm新建一個(gè)Django項(xiàng)目,我的項(xiàng)目名稱(chēng)叫:django_jwt

2)使用語(yǔ)句 python manage.py startapp django_restframework_jwt新建一個(gè)名為django_restframework_jwt的app

3)在settings.py加入注冊(cè)代碼:

INSTALLED_APPS = [
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',

  # 新添加
  'django_restframework_jwt',
  'rest_framework',
]

4)在settings.py中追加配置相關(guān)文件:

REST_FRAMEWORK = {
  'DEFAULT_PERMISSION_CLASSES': (
    'rest_framework.permissions.IsAuthenticated', #必須有
  ),
  'DEFAULT_AUTHENTICATION_CLASSES': (
    'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
  )
}
import datetime
JWT_AUTH = {
 # 指明token的有效期
 'JWT_EXPIRATION_DELTA': datetime.timedelta(days=1),
}

5)settings.py中修改數(shù)據(jù)庫(kù)相關(guān)配置:

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql', # 數(shù)據(jù)庫(kù)的類(lèi)別
    'NAME': 'test', # 數(shù)據(jù)庫(kù)的名字
    'HOST': '127.0.0.1', # 數(shù)據(jù)庫(kù)的ip
    'USER': 'root', # 用戶名
    'PASSWORD': '5201314', # 密碼
    'PORT': '3307'
  }
}

6)在自己的本地?cái)?shù)據(jù)庫(kù)中新建一個(gè)叫test的數(shù)據(jù)庫(kù);

7)安裝相關(guān)的依賴包:

pip install djangorestframework-jwt
pip install djangorestframework markdown Django-filter

8)在django_jwt/urls.py配置相關(guān)的路由:

from django.contrib import admin
from django.urls import path, include
from django_restframework_jwt.views import IndexView

urlpatterns = [
  path('admin/', admin.site.urls),
  path('jwt/', include('django_restframework_jwt.urls')),
  path('index/', IndexView.as_view(), name='index'),
]

9)在django_restframework_jwt/views.py寫(xiě)一個(gè)測(cè)試的視圖:

from django.shortcuts import render, HttpResponse
from rest_framework.views import APIView


class IndexView(APIView):
  """
  首頁(yè)
  """

  def get(self, request):
    return HttpResponse('首頁(yè)')

10)新建django_restframework_jwt/urls.py文件,修改成下面的代碼:

from django.urls import path
from rest_framework_jwt.views import obtain_jwt_token

app_name = 'jwt'
urlpatterns = [
  path('jwt_token_auth/', obtain_jwt_token),

]

11)執(zhí)行下面兩句命令:

python manage.py makemigrations
python manage.py migrate

在數(shù)據(jù)庫(kù)中創(chuàng)建相應(yīng)的表。

12)創(chuàng)建一個(gè)超級(jí)用戶,用來(lái)測(cè)試token

python manage.py createsuperuser

13)運(yùn)行項(xiàng)目,打開(kāi)Postman軟件,測(cè)試項(xiàng)目:

第一步測(cè)試成功,能得到token

接著使用token

token值的前面記得要加入JWT,還要加上一個(gè)空格。

能正常進(jìn)入首頁(yè),如果沒(méi)有在headers加入token,是不能正常訪問(wèn)首頁(yè)的。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 讓Django支持Sql Server作后端數(shù)據(jù)庫(kù)的方法

    讓Django支持Sql Server作后端數(shù)據(jù)庫(kù)的方法

    今天小編就為大家分享一篇讓Django支持Sql Server作后端數(shù)據(jù)庫(kù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • python實(shí)現(xiàn)計(jì)數(shù)排序與桶排序?qū)嵗a

    python實(shí)現(xiàn)計(jì)數(shù)排序與桶排序?qū)嵗a

    這篇文章主要介紹了python計(jì)數(shù)排序與桶排序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • 時(shí)間序列預(yù)測(cè)中的數(shù)據(jù)滑窗操作實(shí)例(python實(shí)現(xiàn))

    時(shí)間序列預(yù)測(cè)中的數(shù)據(jù)滑窗操作實(shí)例(python實(shí)現(xiàn))

    滑動(dòng)窗口操作非常普遍,非常有用,它們也很容易在Python中實(shí)現(xiàn),下面這篇文章主要給大家介紹了關(guān)于時(shí)間序列預(yù)測(cè)中的數(shù)據(jù)滑窗操作python實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • Python使用Selenium實(shí)現(xiàn)模擬登錄的示例代碼

    Python使用Selenium實(shí)現(xiàn)模擬登錄的示例代碼

    Selenium(本文基于python3.8)是一個(gè)功能強(qiáng)大的自動(dòng)化測(cè)試工具,它可以用于模擬用戶在瀏覽器中的行為,比如點(diǎn)擊、輸入、滾動(dòng)等等,本教程將詳細(xì)介紹如何使用Python編寫(xiě)一個(gè)模擬登錄地爬蟲(chóng),使用XPath等多種元素匹配方法,需要的朋友可以參考下
    2023-08-08
  • Python利用socket模塊開(kāi)發(fā)簡(jiǎn)單的端口掃描工具的實(shí)現(xiàn)

    Python利用socket模塊開(kāi)發(fā)簡(jiǎn)單的端口掃描工具的實(shí)現(xiàn)

    這篇文章主要介紹了Python利用socket模塊開(kāi)發(fā)簡(jiǎn)單的端口掃描工具的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Numpy?數(shù)組索引的實(shí)現(xiàn)

    Numpy?數(shù)組索引的實(shí)現(xiàn)

    本文主要介紹了Numpy?數(shù)組索引的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-01-01
  • python實(shí)現(xiàn)TCP服務(wù)器端與客戶端的方法詳解

    python實(shí)現(xiàn)TCP服務(wù)器端與客戶端的方法詳解

    這篇文章主要介紹了python實(shí)現(xiàn)TCP服務(wù)器端與客戶端的方法,以實(shí)例形式詳解分析了Python實(shí)現(xiàn)服務(wù)器端與客戶端的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • Python使用機(jī)器學(xué)習(xí)模型實(shí)現(xiàn)溫度預(yù)測(cè)詳解

    Python使用機(jī)器學(xué)習(xí)模型實(shí)現(xiàn)溫度預(yù)測(cè)詳解

    使用?Python?可以使用機(jī)器學(xué)習(xí)模型進(jìn)行溫度預(yù)測(cè)。常用的模型有回歸分析、隨機(jī)森林等。本文就來(lái)和大家來(lái)了具體實(shí)現(xiàn)方法,希望對(duì)大家有所幫助
    2023-01-01
  • Scrapy啟動(dòng)報(bào)錯(cuò)invalid syntax的解決

    Scrapy啟動(dòng)報(bào)錯(cuò)invalid syntax的解決

    這篇文章主要介紹了Scrapy啟動(dòng)報(bào)錯(cuò)invalid syntax的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • python框架django基礎(chǔ)指南

    python框架django基礎(chǔ)指南

    本文給大家匯總介紹了下python的MVC框架django的一些基礎(chǔ)知識(shí),非常的簡(jiǎn)單實(shí)用,希望對(duì)大家學(xué)習(xí)django能夠有所幫助。
    2016-09-09

最新評(píng)論