连接到远程烧瓶服务器并获取输出

时间:2021-06-15 14:10:17

标签: python-3.x flask

嗨,有一个在树莓派上运行的烧瓶服务器。我想通过内网连接它,在我的电脑cmd中获取输出并打印。

我尝试过的:

远程树莓派中的代码:

#Initialize the Flask app
app = Flask(__name__)
app.secret_key = "super secret key"

@app.route('/save_frame', methods = ['GET','POST'])
def save_frame():
    start_time = time.time()
                   
    # datetime object containing current date and time
    today = datetime.now()     
        
    # dd/mm/YY H:M:S
    dt_string = today.strftime("%Y_%m_%d_%H_%M_%S")
    print("date and time =", dt_string)

    jobnummer = request.args.get('JOB') #if key doesn't exist, returns None

    print('jobnummer',jobnummer)
   
    end_time = time.time() - start_time
    
    res = {"jobnummer" : jobnummer,
           "datee_str": dt_string}

    session['res'] = res
    session['start_time'] = start_time
    return redirect(url_for('.return_frame', res=res, start_time=start_time))

@app.route('/return_frame', methods = ['GET','POST'])
def return_frame():
    time.sleep(10.6)
    if Path('/home/pi/opto_glass/res_R.pickle').is_file():
        with open('/home/pi/opto_glass/res_R.pickle', 'rb') as handle:
            res_R = pickle.load(handle                          
    else:
        pass        
         
    res= request.args['res']
    start_time= request.args['start_time']
    end_time= time.time() - float(start_time)
   
    res1= {"Time needed":  end_time}
    print('res: ', res)
       
    return jsonify(res1, res_R) , 200
 
if __name__ == "__main__":
    app.run(debug=True,port=5000, host='0.0.0.0',threaded=True)
 

我电脑里的代码是:

app = Flask(__name__)

@app.route('/http://172.16.184.37:5000/return_frame', methods = ['GET','POST'])
def glasserkennung():
    #read image file string data
    data = request.get_json()
    print(data)
    return jsonify(data)

if __name__ == "__main__":
    app.run(debug=True,port=5001, host='0.0.0.0',threaded=True)

因此,从我的 raspi 中,我只想要“return_frame”应用程序路由的输出(这是一个 GET 请求)。 所以理想情况下,我想要的是连接到 Raspi Flask 服务器并继续监听服务器,只要“return_frame”输出一些 json 值。

有没有办法做到这一点?

0 个答案:

没有答案