当前位置: 首页 > 网络应用技术

如何设置POST请求Django(Django Post接口)

时间:2023-03-06 02:15:51 网络应用技术

  今天,首席CTO Note将与您分享Django如何设置邮政请求的相关内容。其中,将详细介绍Django帖子接口。如果您可以解决您现在面临的问题,请不要忘记注意此网站。让我们现在开始!

  本文目录清单:

  1.如何将另一个POST请求发送到Django中的另一个IP 2. DJANGO REST框架框架获取,发布,Put,Patch,Patch,Delete,Delete和其他API请求接口设计3. DJANGO获取发布请求值。4. Django ListViewuse帖子方法5.如何在Django的帖子6,Django中接收和分析帖子/获取请求参数:1。在jQuery中使用$ .post()轻松启动邮政请求。必须从服务器获取一些数据,并且必须使用邮政请求2。需要在Android中使用的主要类使用POST请求。

  1. API接口功能要求:设计一些接口URL,以允许前端/客户请求此URL获取数据并显示,更改数据(添加,删除和检查)

  其次,设计逻辑:获取,发布,放置,补丁,删除通过HTTP协议请求符合恢复规格的设计

  第三,简单的源代码:

  3.序列化序列化

  #IMPORT模型类和REST_FRAMEWORK序列化模块序列化器

  从.models导入文章

  来自REST_FRAMEWORK导入序列化器

  #Define序列化类,使用Modelerializer方法

  class carticleSerializer(serializers.modelserializer):

  元类:

  模型=文章#Specify序列化模型类

  fields ='_ all _'#select序列化字段,您可以自己选择该字段

  4.查看功能视图

  来自django.http导入httpresponse

  来自django.views.decocotors.csrf导入csrf_exempt

  从.models导入文章

  从.Serializer Import ArticleSerializer

  来自REST_FRAMEWORK.RENDERERS导入JSONRENDERER

  来自REST_FRAMEWORK.PARSERS导入JSONPARSER

  #CH致电CSRF装饰CSRF_EXEMPT模块解决交叉域访问问题

  #jsonrenderer,将python的dict转换为客户

  #JSONPARSER负责转换要求接收到DICE的JSON数据

  #写写一

  #call the Docoration @csrf_exempt在越过域视图的需要

  @csrf_exempt

  DEF ARTICE_LIST(请求):

  如果request.method =='get':

  Arts = Article.Objects.all()#get模型数据

  ser = carticleSerializer(实例=艺术,许多= true)#serializatized数据实例

  #Next,在REST_FRAMEWORK方法中使用JSONRENDER方法渲染数据

  JSON_DATA = JSONRENDERER()。渲染(ser.data)

  返回httpresponse(json_data,content_type ='application/json',status = 200)

  #写法2

  jsonresponse类(httpresponse):

  def _ init(self,data,** kwargs):

  content = jsonrenderer()。渲染(数据)

  kwargs ['content_type'] ='application/json'

  super(jsonresponse,self)._ init(内容,** kwargs)

  #prand和删除并根据ID修改操作接口

  @csrf_exempt

  DEF ARTICE_DETAIL(请求,ID):

  尝试:

  art = article.objects.get(id = id)

  除了文章。

  返回httpresponse(状态= 404)

  评论:

  *写入方法II定义JSONRESPONSE类以打包返回的数据数据和content_type返回类型

  *API接口

  获取/发布

  获取/put/patch/delete

  *Postman测试渲染

  1. Django获得多个关键值来自帖子:

  阿贾克斯:

  var语言= {};

  语言['英语'] = ['mark','james'];

  语言['Spanish'] = ['Amy','John'];

  $ .ajax({{{{{{

  类型:'post',

  URL:'/save/',,

  数据:语言,

  数据类型:'json'

  });

  django Views.py

  如果request.is_ajax()和request.method =='post':

  对于request.post中的键:

  打印键

  valuelist = request.post.getList(key)

  印刷valluelist

  -----------------------------------

  Fidder:

  名称=六月;年龄= 26;

  -----------------------------------

  Views.py

  16对于请求中的键。

  年龄[U'26'] [04/APR/2012 10:58:11]“ post/getuin/http/1.1” 200 20 20 20

  2.一次加载所有值:

  def View_example(请求):

  data = simplejson.loads(request.raw_post_data)

  方法/步骤

  1:编辑:forms.py

  #coding = utf-8 #specified编码,如果中文出现在文档中,则代码编码会出现错误,因为中文出现在我的代码中

  从django导入表单#import the from django的表单模块

  类HostadDform(forms.form):#Define hostaddform(forms.form)的类是固定的写作方法,并编写了写作。

  ip = forms.ipadddrssfield(label ='主机ip')#定义IP文本框,例如渲染图中的“主机IP”,iPaddressfield是一个IP字段,与compand.py的定义一致。标签='主机IP',定义标签标签,如下所示

  port = forms.charfield(max_length = 5,label ='port')#define端口文本框,最大长度为5

  要设置的哪个字段不编写,灯兄弟使用必需= false,例如cpumun = formss.charfield(max_length = 50,quirtect = false = false,label ='cpu core number'))

  两个:edit view.py

  def hostadd(请求):#define hostadd

  如果request.method ==“ post”:#determine是否使用了帖子方法

  fr = hostaddform(request.post)#如果使用邮政方法,则将其绑定到FR变量。hostaddform是forms.py上定义明确的字段。它必须保持一致。

  如果FR.IS_VALID():#判断在表单上上传的数据是否有效,如果有效,请执行以下语句

  打印fr.cleaned_data ['ip'] #here指的是可执行的代码。我只是打印此IP地址。编写程序时,您可以在此处替换为要编写的代码段。

  返回httpresponse(“ ok”)#完成执行后,返回成功的单词

  else:#如果您不使用邮政方法,则执行以下代码段

  fr = hostaddform()#将hostaddform()定义为变量fr。实际上,这是空价值。

  return render_to_response('hostaddd.html',局部())#finally返回所有变量返回模板hostadd.html,在hostadd.html上显示了这些表单,这些表单显示了这些表单。

  如果形式实体的数据是合法的,则Lakebrother将具有可用的Clenet_data属性。该词典是包含干净数据的字典。当我们需要报告数据时,请使用此数据,就好像以上代码中的print fr.clenet_data ['ip']

  3:编辑模块文件hostadd.html

  形式action =“ method =“ post”

  {{fr}}输入type =“ submit” value =“ submit”

  /形式

  {{fr}}标签将显示表单的所有内容,并使用我们在forms.py上定义的标签标签。没有这个,我们也可以设置它。如下所示,在hostadd.html上自定义显示器,如下所示

  形式action =“ method =“ post”

  IP地址:{fr.ip}} /br

  IP端口:{fr。端口}}/br

  输入类型=“提交”值=“提交”

  /形式

  fr.ip fr.port,ip,端口的名称对应于表格上的字段名称。

  如果要检测IP文本提交的数据是否合法,则LAMP兄弟甚至可以使用{{fr.ip.errs}}获得。如果类型不符合该类型,则将显示相应的提示:

  4

  四:编辑urls.py文件

  (r'^hostadd.html $',hostadd),

  影响:

  5

  推动:

  将默认值添加到一个字段中,例如在IP字段上,编写了默认sense 192.168.1。

  从django导入表格

  班级

  如下:

  mideware_classes =(

  'django.middleware.common.commonmiddleware',

  'django.contrib.sessions.middleware.sessionmiddleware',

  'django.middleware.csrf.csrfviewmiddleware',,

  'django.contrib.auth.middle.authenticationmiddleware',,

  'django.contrib.messages.middle.messagemiddleware',,

  'django.middleware.csrf.csrfresponsemiddleware',#add此中间件

  治愈

  背景:Django开发API接口,从前端接收参数值并分析

  发布请求

  JSON格式的前端传输,“ content-type”,“ application/json”

  返回 - 接收分析

  获取请求

  JSON格式的前端传输,“ content-type”,“ application/json”

  返回 - 接收分析

  结论:以上是Django如何设置POST请求和Django Post接口的全部内容。