如何序列化python flask变量?

如何序列化python flask变量?,python,json,flask,flask-restful,Python,Json,Flask,Flask Restful,从烧瓶进口烧瓶 从flask导入渲染_模板,重定向,请求 来自restful导入资源Api 导入请求 进口泡菜 app=烧瓶(名称) api=api(应用程序) 类HelloWorld(资源): def post(自我): r=请求。获取('https://samples.openweathermap.org/data/2.5/weather?zip=16802,美国&appid=157d320b7d029e653c67902f982784ff') api.add_资源(HelloWorld,“

从烧瓶进口烧瓶 从flask导入渲染_模板,重定向,请求 来自restful导入资源Api 导入请求 进口泡菜

app=烧瓶(名称) api=api(应用程序)

类HelloWorld(资源): def post(自我): r=请求。获取('https://samples.openweathermap.org/data/2.5/weather?zip=16802,美国&appid=157d320b7d029e653c67902f982784ff')

api.add_资源(HelloWorld,“/”)

如果name='main':
app.run(debug=True)

创建一个程序,首先发送序列化对象:

导入烧瓶
进口泡菜
object_to_send={1:2}
@app.route(“/endpoint”)
def endpoint():
返回pickle.dumps(object_to_send.hex())
应用程序运行(端口=8080)
然后您可以从另一个python程序调用它并读取该对象:

导入pickle
导入请求
object_hex=请求。get('http://127.0.0.1:8080/endpoint)。文本
object_received=pickle.load(bytearray.fromhex(object_hex))
打印(已接收对象)

这绝对不是一个最佳实践-如果可能的话,也许您应该将其序列化为json,或者使用某种消息传递框架,该框架应支持不同的序列化方法,或者使用消息总线,如Kafka。

创建一个先发送序列化对象的程序:

导入烧瓶
进口泡菜
object_to_send={1:2}
@app.route(“/endpoint”)
def endpoint():
返回pickle.dumps(object_to_send.hex())
应用程序运行(端口=8080)
然后您可以从另一个python程序调用它并读取该对象:

导入pickle
导入请求
object_hex=请求。get('http://127.0.0.1:8080/endpoint)。文本
object_received=pickle.load(bytearray.fromhex(object_hex))
打印(已接收对象)

这绝对不是一个最佳实践-如果可能的话,也许您应该将其序列化为json,或者使用某种消息传递框架,该框架应支持不同的序列化方法,或者使用消息总线,如Kafka。

尝试
返回json.dumps(tempp_c)
。如果它不是JSON Serialsial-考虑一些二进制格式-甚至可以发送一个腌制对象返回-如果端点是指应用程序。你如何发送一个腌渍对象回?尝试<代码>返回JSON。转储(TEMPPYC)< /代码>。如果它不是JSON Serialsial-考虑一些二进制格式-甚至可以发送一个腌制对象返回-如果端点是指应用程序。你如何发送一个腌制对象回来?
    json_object_r = r.json()
    temp_k = float(json_object_r['main']['temp'])
    temp_c = temp_k - 273.15
    tempp_c = int(temp_c)

    pickle_in = open("var.pickle", "wb")
    tempp_c = pickle.load(pickle_in)



    # pressure

    p = requests.get('https://samples.openweathermap.org/data/2.5/weather?zip=16802,us&appid=157d320b7d029e653c67902f982784ff')

    json_object_p = p.json()
    press_k = float(json_object_p['main']['pressure'])

    # wind
    # speed
    w = requests.get('https://samples.openweathermap.org/data/2.5/weather?zip=16802,us&appid=157d320b7d029e653c67902f982784ff')

    json_object_w = w.json()
    wind_k = float(json_object_w['wind']['speed'])

    # gust
    g = requests.get('https://samples.openweathermap.org/data/2.5/weather?zip=16802,us&appid=157d320b7d029e653c67902f982784ff')

    json_object_g = g.json()
    gust_g = float(json_object_g['wind']['gust'])


    return {tempp_c}