首页
学习
活动
专区
圈层
工具
发布

django-rest-framework配置json web token进行接口的认证

使用django-rest-framework开发api并使用json web token进行身份验证 在这里使用django-rest-framework-jwt这个库来帮助我们简单的使用jwt进行身份验证...', ), } 安装django-cors-headers 解决api跨域请求有好几种方法,比如(jsonp,在apache或nginx中设置,在请求头里设置),我们这里使用这个包来方便的跨域...import obtain_jwt_token url(r'^api-token-auth/', obtain_jwt_token), 配置页面访问权限 按需设置访问权限,加上token之后基本上是不经过认证是不能查看或修改数据的...前端配置 (在前端我们使用jQuery封装的ajax来操作get和post) 使用post方法获取token并存入html的localStorage中 INSTALLED_APPS = [...所以在开发阶段,我们先应不让jwt拦截所有请求,这样对我们测试产生诸多不变 注: 上述环境在ubuntu16.04 lts django1.9中搭建测试成功 上述文字皆为个人看法,如有错误或建议请及时联系我

1.8K10

用 Vue 和 Django 快速搭建前后端分离项目

axios 类似于 AJAX 的功能,主要为了访问后端 api 来获取数据。 mockjs 主要用于模拟后端的 api 接口返回数据。...当前端工程师需要独立于后端并行开发时,后端接口还没有开发完成,那么前端怎么获取数据?这时可以考虑前端自己模拟假数据,mockjs 可用来生成随机数据,拦截 Ajax 请求。...Mock.mock('api/users/', (req, res) => { //当post或get请求到/api/users/路由时Mock会拦截请求并返回上面的数据 var list =...再搭建后端 这里以 DRF(Django REST Framework) 为例。如果对 DRF 还是第一次接触,建议先按官方的教程[2]走一遍。...我到网上搜索了一下, 有两种主流方式,一种是直接将 dist 目录位置配置在 nginx 上,然后使用 nginx 反向代理 UWSGI 或 gunicorn,通常使用 socket 协议。

5.8K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Django-choices字段值对应关系(性别)-MTV与MVC科普-Ajax发json格式与文件格式数据-contentType格式-Ajax搭配sweetalert实现删除确认弹窗-自定义分页器

    (这一特点给用户的感觉是在不知不觉中完成请求和相应过程) 用 Ajax 做一个小案例 页面上有三个 input 框,在前两个 input 框中输入数字,点击按钮发送 ajax 请求,在不刷新页面的情况下...,在第三个框中自动填写两数之和 咱们这里是 jQuery 的 ajax,别忘了先引入 jQuery 准备工作 新建一个项目,完成基本配置 因为要用到 post 请求,所以先暂时把 settings...动手用 Ajax 实现效果 思路分析 我们是输入信息,然后点击 计算按钮,由 ajax 向后端发起请求,后端拿到请求然后返回数据给前端,前端把数据填到结果框中 可以看出,我们的突破口是 计算按钮...ajax 提交数据 ajax 默认数据提交方式也是 urlencoded 不符合格式就不要了,前后端编码和数据格式一致就不会出现这个问题 ajax发 json 格式数据 django 后端针对...json 格式的数据,并不会自动解析放到 request.POST 或 request.FILES 里面,它并不会解析 json 格式数据,而是将它原封不动地放在 request.body 里了 $(

    7K31

    Django实践-10RESTful架构和DRF入门

    REST – REpresentational State Transfer,英语的直译就是“表现层状态转移”。...Resource:资源,即数据。 Representational:某种表现形式,比如用JSON,XML,JPEG等; State Transfer:状态变化。通过HTTP动词实现。...资源就是网络上的一个实体,一段文本,一张图片或者一首歌曲。资源总是要通过一种载体来反应它的内容。JSON是现在最常用的资源表现形式。 统一接口。...RESTful风格的数据元操CRUD(create,read,update,delete)分别对应HTTP方法:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE...资源只能是名词不能是动词,而且名词往往和数据库的表名相对应。同时,利用HTTP方法(post, get, put, delete)可以分离网址中资源名称的操作。

    98021

    使用AJAX获取Django后端数据

    但是如果我们只想更新页面的一部分,则不必完全重新渲染页面-这时候就要用到AJAX了。 AJAX提供了一种将GET或POST请求发送到Django视图并接收任何返回的数据而无需刷新页面的方法。...根据Django项目的URLconf和视图的配置方式,URL可能包含关键字参数或查询字符串,我们希望在视图中使用该参数来选择请求的数据。 Headers 设置AJAX请求头参数。...将根据那些URL参数或查询字符串(如果使用的话)从数据库中检索数据。我们要发送回页面的数据必须在使用JsonResponse。 调用之前,请确保从django.http导入JsonResponse。...如果需要支持IE,请查看jQuery或XMLHttpRequest来发出AJAX请求。 AJAX请求应仅限于Django项目的一小部分。...如果发现自己在多个模板中使用它们来获取大量数据,请考虑使用Django Rest Framework创建API。

    10.1K40

    python测试开发django-60.token登录(TokenAuthentication)

    环境准备: python 3.6 django 2.1.2 TokenAuthentication django rest framework权限和认证有四种方式: BasicAuthentication...SessionAuthentication 此身份验证方案使用Django的默认会话后端进行身份验证。 会话身份验证适用于与您的网站在同一会话上下文中运行的AJAX客户端。...', # token认证 ) } 同步数据库,生成authtoken_token表 python manage.py migrate 执行完成后,数据库里面就会多一张authtoken_token...登录生成token案例 登录可以直接用django自带的User表,所以不需要重新设计表了,登录的账号就是User表的数据,先准备几个登录的账号,比如我的登录账号是test,密码是123456 ?...from django.shortcuts import HttpResponse from rest_framework.authtoken.models import Token from django.contrib

    3.3K30

    1. DRF前奏

    ,不再渲染HTML页面,不在控制前端效果,至于前端展示什么效果,由前端来定 前后端分离后存在的问题: 维护成本高 学习曲线增高 协作成本高 RestfulAPI 什么是RestfulAPI: REST...描述网络中客户端与服务端的一种交互方式,它本身不常用,常用的是如何设计RestfulAPI(REST风格的网络接口) RestfulAPI风格就是把所有的数据都当做资源,对表的操作就是对资源操作 资源就是指的...URL,基于URL对资源操作,Web服务在URL上支持一系列请求方法,如下表所示 示例: 非REST的URL:http://ip/get_user?...id=123 REST的URL:http://ip/user/123 Django的开发模式 用户信息管理系统案例 基础环境准备 通过Pycharm创建django项目 创建app E:\workspace...: 创建三条测试数据 E:\workspace\django-project\day1\django_user_info>python manage.py shell In [1]: from myapp.models

    1.2K30

    Django项目实战之用户头像上传与访问

    ,需要注意的有几点: 所谓的上传到数据库,不是讲图片本身或者二进制码放在数据库,实际上也是将文件上传到服务器本地,数据库只是存了一个文件的路径,这样用户要调用文件的时候就可以通过路径去服务器指定的位置找了...创建ORM的时候,avatar字段要有一个upload_to=''的属性,指定上传后的文件放在哪里 往数据库添加的时候,文件字段属性赋值跟普通字段在形式上是一样的,如:models.User.objects.create...附加 功能我们是实现了,看起来我们在调用文件的时候,只需要通过数据库文件路径已经保存的文件本身就可以访问图片,让它出现在网页上,其实并不是这样, 我们需要配置一些东西,django才可以找的到,不然的话就会过不了...:false来指定ContentType form上传的时候,文件数据是通过标签来‘’包裹‘’数据, ajax上传的时候,是通过一个 FormData 实例对象来添加数据...,传递的时候传递这个对象就行了 数据传递过去之后,是封装在request.FILES里,而不是request.POST里

    2.7K70

    Django-DRF | 请求

    Django REST框架构建Web API。...默认输入url的请求方式即为get,当请求方式为get时,若带有需要传递的其他参数,则会将该参数的name和value补充在url中一并提交,post方式则将数据放在内容中一并提交,不再url中显示。...import View from django.http import HttpResponse class IndexView(View): # 以get形式访问会执行get函数,一般情况下获取数据...url中需要添加 as_view() 类里面使用 from 表单提交,只有 get 和 post 方法 类里面使用 ajax 发送数据,支持 restful 规范 'get'获取数据;'post...'创建新数据;'put'更新;'patch'局部更新;'delete'删除; CBV 重新定义 dispatch 函数 所有方法都是通过 dispatch 这个函数反射执行,要想在 get 或 post

    87820

    Django+Vue开发生鲜电商平台之5.使用DRF实现商品列表页和过滤

    虽然Django已经可以实现Json数据传递,但是我们还是采用Restful framework,因为其对Django自带功能实现了进一步优化,更方便使用。...''' return Goods.objects.create(**validated_data) views.py中实现用于提交数据的post方法如下: from rest_framework...方法的内容POST,这意味着您可以访问PUT和PATCH请求的内容; 它支持REST框架的灵活请求解析,而不仅仅是支持表单数据。...也可以根据需要从视图中返回常规HttpResponse或StreamingHttpResponse对象。...但是这显得很麻烦,可以用更简单的方式实现,即使用django-filter实现,包括DjangoFilterBackend(与后台管理系统表现相同)、SearchFilter、OrderingFilter

    6.1K20

    Django数据库查询优化与AJAX

    数据库设计三大范式 第一范式(1NF):列不可再分(原子性) 每一列属性都是不可再分的,两列的属性相近或相似或一样,应尽量合并属性一样的列,确保不产生冗余数据。...第二范式(2NF):属性完全依赖路主键(唯一性) 第二范式是在第一范式的基础上建立起来的,也就是第二范式要求数据库表中的每个实例或行必须可以被唯一的区分,也就是一张表至少有一个主键来区分每一条记录。...(这一特点给用户的感受是在不知不觉中完成请求和响应过程) AJAX 不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。...前后端进行数据交互的时候,针对不同的数据后端会进行不同的处理,Django中的request.POST、request.GET、request.FILES 前端向后端发送数据的时候需要指定数据编码格式...方法获取文件数据 $.ajax({ url:'', type:'post', data:MyFormData,

    3.2K20

    跟着官方文档学Python——Django Rest framework

    RESTful为表现层状态转移,是一种以资源为中心的web软件架构风格。 资源:使用URL指向一个实体。 表现层:资源的表现形式;比如图片、HTML文本等。...通过GET/ POST/ PUT/ DELETE来获取/新建/更新/删除资源。一般使用JSON格式返回数据。大多数web框架都有相应的插件支持RESTful API。...两者都是数据转换格式,比如我们在django中获取到的数据默认是模型对象,但是模型对象数据无法直接提供给前端或别的平台使用,所以需要把数据进行序列化,变成字符串或者json数据,提供给别人,这是序列化。...Django Rest framework Django REST framework是一个内置在django里面的子应用,可以快速的开发REST API接口应用。...'rest_framework', ] 在项目中如果使用rest_framework框架实现API接口,主要有以下三个步骤: 将请求的数据(如JSON格式)转换为模型类对象 通过模型类对象进行数据库操作

    3.4K10
    领券