1. 程式人生 > >django 實現web介面 python3模擬Post請求

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就可以做智慧家居什麼的了