django实现web接口 python3模拟Post请求方式
作者:xh21bao
今天小编就为大家分享一篇django实现web接口 python3模拟Post请求方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
作为抛砖引玉,用python3实现百度云语音解析,首先需要模拟Post请求把音频压缩文件丢给百度解析。
但是遇到一个问题客户端怎麽丢数据都是返回错误,后来在本地用django搭建了一个接口模拟一下,发现还是有地方弄错了!
研究这玩意有啥用?
1、用python做自动化运维,客户端发送收集好的信息(模拟post发送)
2、前后端分离,django只提供数据,前端用vuejs,nodejs实现
3、3端 立体通信
上代码:
url.py
from django.conf.urls import url from django.contrib import admin from return_api import views urlpatterns = [ url(r'^api', views.apis), ]
views.py
from django.shortcuts import render from django.http import JsonResponse # Create your views here. def apis(request): data={'name':'你爹'} #返回给客户端的数据 if request.method=="POST": print(request.POST) #查看客户端发来的请求内容 return JsonResponse(data) #通过 django内置的Json格式 丢给客户端数据
client.py
import requests url = 'http://127.0.0.1:8001/api' #django api路径 parms = { 'name' : '客户端', #发送给服务器的内容 } headers = { #请求头 是浏览器正常的就行 就这里弄了一天 - -! 'User-agent' : 'none/ofyourbusiness', 'Spam' : 'Eggs' } resp = requests.post(url, data=parms, headers=headers)#发送请求 # Decoded text returned by the request text = resp.text print(json.loads(text))
结果:
服务器端:
客户端:
大概就这样了 查不懂 研究一下百度语音 api就可以做智能家居什么的了
以上这篇django实现web接口 python3模拟Post请求方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。