如何使用请求库将有效负载从另一个Python应用程序发布到Flask应用程序

如何使用请求库将有效负载从另一个Python应用程序发布到Flask应用程序,flask,python-requests,Flask,Python Requests,我有两个应用程序,一个是烧瓶应用程序(app.py),另一个是与usb条形码扫描仪集成并向烧瓶路径发送post请求的应用程序,我们称之为扫描仪应用程序(scanner.py) 我想要发生的是,当扫描仪成功扫描条形码时,假定它应该向路由发送一个post请求,该请求带有一个有效负载,并且该有效负载应该已经被flask应用程序接收到 但我认为这是不正确的,因为扫描后什么也没有发生 scanner.py def UPC_lookup(api_key,upc): '''V3 API'''

我有两个应用程序,一个是烧瓶应用程序(app.py),另一个是与usb条形码扫描仪集成并向烧瓶路径发送post请求的应用程序,我们称之为扫描仪应用程序(scanner.py)

我想要发生的是,当扫描仪成功扫描条形码时,假定它应该向路由发送一个post请求,该请求带有一个有效负载,并且该有效负载应该已经被flask应用程序接收到

但我认为这是不正确的,因为扫描后什么也没有发生

scanner.py

def UPC_lookup(api_key,upc):
    '''V3 API'''

    try:

        item, value = search_request(upc)
        print str(item) + ' - ' + str(value)
        payload = {}
        payload['item'] = str(item)
        payload['price'] = str(value)
        payload_data = json.dumps(payload)
        requests.post('http://localhost:5000/', data=payload_data)

    except Exception as e:
        pass
if __name__ == '__main__':
    try:
        while True:
            UPC_lookup(api_key,barcode_reader())
    except KeyboardInterrupt:
        pass
# Index route
@app.route("/", methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        item = request.args.get('item')
        price = request.args.get('price')
        print(str(item))
        print(str(price))
        return render_template('dashboard.html', item=item, value=price)
    return render_template('dashboard.html') #ICO Details
app.py

def UPC_lookup(api_key,upc):
    '''V3 API'''

    try:

        item, value = search_request(upc)
        print str(item) + ' - ' + str(value)
        payload = {}
        payload['item'] = str(item)
        payload['price'] = str(value)
        payload_data = json.dumps(payload)
        requests.post('http://localhost:5000/', data=payload_data)

    except Exception as e:
        pass
if __name__ == '__main__':
    try:
        while True:
            UPC_lookup(api_key,barcode_reader())
    except KeyboardInterrupt:
        pass
# Index route
@app.route("/", methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        item = request.args.get('item')
        price = request.args.get('price')
        print(str(item))
        print(str(price))
        return render_template('dashboard.html', item=item, value=price)
    return render_template('dashboard.html') #ICO Details
我想做的是,当它扫描条形码并发送post请求时,负载应该已经被接收并显示在仪表板上,但是我什么也没有收到


有解决办法吗?或者是更好的实现?

我认为应该使用request.form而不是request.args

@app.route("/", methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        item = request.form.get('item') # <-- Here!
        price = request.form.get('price')
        print(str(item))
        print(str(price))
        return render_template('dashboard.html', item=item, value=price)
    return render_template('dashboard.html') #ICO Details
@app.route(“/”,方法=['GET','POST'])
def index():
如果request.method==“POST”:

item=request.form.get('item')#是否尝试查看是否引发了任何异常?实际上,您的异常被忽略了。记录您的异常。