从本地客户端计算机向 Ubuntu 服务器上的烧瓶服务器发送和接收数据

有人可以帮我查询。


在我的本地机器上,我有一个用 Python 实现的服务器和客户端。JSON 数据从客户端发送到服务器,服务器从中解析出所需的数据并将结果作为 JSON 文件发送回客户端。这在我的本地机器上运行良好。我现在想在 Ubuntu 服务器上实现这个 Flask 服务器,然后想要发送和接收数据。我正在尝试使用 mod_wsgi 中的解释


https://www.digitalocean.com/community/tutorials/how-to-deploy-a-flask-application-on-an-ubuntu-vps


我仍然无法将数据返回到我的本地机器。这是我的代码:


客户端.py


import sys

import json

import requests

import time

import os

import glob


data_location = 'C:\\Users\\cathy\\Desktop\\data'  # folder containing all the data        

for root, directories, files in os.walk(data_location):

    for directory  in directories:

        loc = (data_location + '/' + directory + '/*')

        all_files = glob.glob(loc)

        for filename in all_files:

            f=open(filename)

            f=f.read().splitlines()

            payload = {'input': f}

            s = json.dumps(payload)

            #res = requests.post("http://127.0.0.1:5000/my_data/", json=s).json()

            res = requests.post("http://12.345.678.890/my_data/", json=s).json()

            #time.sleep(10)

            if res['employee_id']:

                print(res['employee_id'])

            if res['name']:

                print(res['name'])

服务器.py


from flask import Flask

from flask import request

import json

import re

import sys

import os

import time

from parsers import id_parser, name_parser

import spacy

import re

from datetime import datetime#

nlp = spacy.load('en_core_web_lg')

import glob

app = Flask(__name__) 



@app.route('/my_data/', methods = ['POST'])

def parsing_data():

    jsondata = request.get_json()

    data = json.loads(jsondata)

    requiredData=data['input']

    employee_id_=id_parser(requiredData)

    name=name_parser(requiredData)


    result = {'employee_id_': employee_id_, 'name':name}

    return json.dumps(result)



if __name__ == '__main__':

    app.run(debug=True)


阿晨1998
浏览 144回答 1
1回答

慕的地6264312

而不是json.dump()尝试使用jsonify在烧瓶内兼容的烧瓶方法。#......from flask import jsonify#......@app.route('/my_data/', methods = ['POST'])def parsing_data():    #.....    result = {'employee_id_': employee_id_, 'name':name}    return jsonify(result)我不确定它是否会有所帮助,但请尝试一下。:)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python