1. 程式人生 > >Flask處理前臺POST過來的JSON

Flask處理前臺POST過來的JSON

POST JSON資料的JS程式碼:

$.ajax({
              url:'http://127.0.0.1:5000/calc',
              type : 'post',
              dataType:'json',
                headers: {
                    "Content-Type": "application/json;charset=utf-8"
                },
                contentType:'application/json; charset=utf-8',
                data:JSON.stringify({D:D,q:q,ls:ls,Lz:Lz,l:l,Uz:Uz,u:u,y:y,P:P,h1:h1,data_list:data_lists}),
              success:function(data){
                  $("#finally").show();
              }
        })

from flask import request

後臺使用request.get_data(as_text=True) 來接收資料,資料的格式為bytes,加入了as_test=True引數後就變成Unicode了

在使用json.loads()方法就可以轉換成字典:

from flask import Flask, render_template, request, make_response
import json
import light_calc

app = Flask(__name__)
app.debug = True


@app.route('/', methods=['POST', 'GET'])
def main():
    return render_template('test_inputs.html')


@app.route('/calc', methods=['POST'])
def calc():
    data_list = []
    data = json.loads(request.get_data(as_text=True))
    for key, value in data.items():
        if value == '':
            data[key] = 0
    for key, value in data.items():
        if type(value) == str and value != 'i':
            data[key] = float(value)

    for i in data['data_list']:
        new_dict = {}
        new_dict['r'] = float(i['r'])
        new_dict['d'] = float(i['d'])
        new_dict['n'] = float(i['n'])
        new_dict['n_2'] = float(i['n_2'])
        data_list.append(new_dict)
    print(data)
    print(data_list)
    try:
        result = light_calc.main(data['D'], data['q'], data['ls'], data['Lz'], data['Uz'], data['l'], data['u'], data['y'],
                             data['P'], data['h1'], data_list)
        resp = make_response(result)
        resp.headers['Content-Type'] = 'text/json'
        return result
    except Exception as e:
        print(e)
        return '{"status":"500"}'

if __name__ == '__main__':
    app.run()

相關推薦

Flask處理前臺POST過來JSON

POST JSON資料的JS程式碼:$.ajax({    url:'http://127.0.0.1:5000/calc',    type : 'post',    dataType:'json',

Flask處理前端POST過來JSON

esp end ica final test 處理 ESS tail nic POST JSON數據的JS代碼: $.ajax({    url:‘http://127.0.0.1:5000/calc‘,    type : ‘post‘,   

C# 一般處理程序ashx接收服務端post過來json數據

img quest 9.png request clas xxx pos 處理 nbsp 這個和前端js的接收方式有點不一樣,前端接收用request.form["xxx"]即可 C# 一般處理程序ashx接收服務端post過來json數據

05.Java後臺如何接收並處理前臺過來json格式的陣列引數

頁面上有一個數組,裡面存放了多個json,需要將該陣列作為引數傳給Java後臺。 var data= [{name:"jon",age:"12"},{name:"jic",age:"18"},{name:"petter",age:"14"}] $.ajax({    

Java後臺如何接收並處理前臺過來json格式的陣列引數

頁面上有一個數組,裡面存放了多個json,需要將該陣列作為引數傳給java後臺。 var data= [{name:"jon",age:"12"},{name:"jic",age:"18"},{name:"petter",age:"14"}] $.ajax({       

前臺過來json資料,解析request

/** * 解析前臺獲得的互動資料 * @param request * @return * @throws IOException */ public static JSONObject getJsonObject(HttpServletRequest re

python中post請求json資料且返回json資料處理

上篇講到以json形式傳送post請求。 此次為 post請求返回物件對json 時的處理辦法 請求 #請求 response = requests.post(url, data=json.dumps(pyload),headers=headers).text

一個flask處理get,post請求

一個簡單的flask處理get和post請求 # -*- coding: utf-8 -*- import os import json from flask import Flask,render_template from flask import requ

python3 服務端使用CGI指令碼處理POSTJson資料

傳送端程式碼 #!/usr/bin/env python3 #coding=utf-8 #agent.py import requests import json import urllib.requ

Linux--Shell指令碼逐行讀文字處理並curl傳送post請求json格式等問題

問題:Shell指令碼逐行讀取文字,字串分割,Curl傳送Post請求Json格式等相關問題 在linux中使用curl傳送一個post請求時,帶有json的資料,在傳送時發現json中的變數沒有解析出來: curl -d '{"Pin": "${line}"}' -H"

前臺js傳入json或map型別資料給後臺及後臺接收處理操作

5.java後端使用request拿到json資料String ds = request.getParameter("postData");JSONArray json=JSONArray.fromObject(ds); //使用net.sf.json.JSONObject物件來解析jsonJSONObjec

jQuery在前臺接收後臺json陣列並處理

首先,科普一下:為什麼要用json? 使用上的因素:JSON的結構更容易對映至一般語言的資料結構。 JSON的主要組成成分: JSON是object、array、string

Gson處理前端傳遞過來Json物件陣列

如何從前端傳遞Json物件陣列到後臺 場景:給後臺傳遞物件陣列,後臺通過Gson解析,並把物件存放到List集合裡面。 在使用Gson前匯入Gson的jar包gson-1.4.jar,在j

JAVA後臺接收前臺過來json字串並解析獲得key 和value

前臺程式碼: $.ajax({ type:"post", url:"project/updateProject", data:{ formda

SpringMVC實戰(五)-處理POST提交JSON資料

1.表單提交 2.JSON串 1、客戶端請求 String url = "http://localhost:8080/order/create"; String data = "{\"id\":3, \"cat

JS Python Flask 處理json 學習筆記

Json在程式碼編寫過程中有著極其重要的作用,一般的資料傳輸都需要用到Json,Json資料大致分為Json物件和Json字串,而這兩者的轉換就顯得尤為重要。當然,在這之前要有支援Json的環境,比如json.js包和Python所支援的json包。我不認為json的學習要

koa前臺post資料到後臺,以及通過字串拼接才能後臺才能拿到,以及在後臺轉換json

前臺部分:        var valx=this.state.keyval                          這個不要        var result =fetch('/api/result',{            method:"POST", 

jQuery.Post到Struts2的action處理,並返回json物件到前端

之前雖然一直在用jQuery.post函式,將前端頁面的請求傳送到struts中的action處理,但是用的是公司寫好的一套東西,基本都是複製貼上,反而對基本的post功能沒有深入瞭解。下面簡單配置說明action中接收處理post的請求。 用的是struts2,web.

前臺ajax請求Json,Date型別處理

情景:在用ajax請求json資料,後臺Java從Mysql中獲取資料,當資料庫中包含date型別時,前臺可以自動轉換為日期字串格式,如2013-12-27. 而資料庫中的datetime型別,前臺顯示的卻是一串數字。 處理:首先在前臺得到javascript可以識別的d

Python實例之抓取網易雲課堂搜索數據(post方式json型數據)並保存為TXT

網易雲 pytho sco 關鍵詞 page json ner urn 頁碼 本實例實現了抓取網易雲課堂中以‘java’為關鍵字的搜索結果,經詳細查看請求的方式為post,請求的結果為JSON數據 具體實現代碼如下: import requests import json