无法访问此站点 [flask, python]

Ous*_*ama 11 python google-chrome flask

当我在浏览器中打开链接 0.0.0.0:5000 时,我总是在浏览器上收到消息“无法访问此站点”,代码似乎正在运行,因为我在控制台上收到此消息

http://0.0.0.0:5000/ 上运行(按 CTRL+C 退出)

在此处输入图片说明

这是我正在使用的代码

from flask import Flask, render_template, request
from scipy.misc import imsave, imread, imresize
import numpy as np
import keras.models
import re
import sys
import os
from load import *

sys.path.append(os.path.abspath('./model'))
app = Flask(__name__)
global model, graph
model, graph = init()

def convertImage(imData):
    imgstr = re.search(r'base64(.*'.imData).group(1)
    with open('output.png', 'wb') as output:
        output.write(imgstr.decode('base64'))

@app.route('/')
def index():
    return render_template('index.html')

@app.route('/predict', methods=['GET', 'POST'])
def predict():
    imData = request.get_data()
    convertImage(imData)
    x = imread('output.png', mode = 'L')
    x = np.invert(x)
    x = imresize(x, 48, 48)
    x = x.reshape(1,48,48,1)
    with graph.as_default():
        out = model.predict(x)
        response = np.array_str(np.argmax(out))
        return response



if __name__ == "__main__":
    port = int(os.environ.get('PORT', 5000))
    app.run(host='0.0.0.0', port=port)
Run Code Online (Sandbox Code Playgroud)

wan*_*ust 5

一般来说,这个消息

http://0.0.0.0:5000/ 上运行(按 CTRL+C 退出)

通知您将被监听以接受请求的 PC 的 IP 地址。它可以配置为仅侦听一个 IP 地址。

正如评论中所述,如果您尝试从您开发的同一台 PC 访问您的网站,您可以使用 virtual (loop) address 127.0.0.1。如果您想检查您的网站在连接到同一网络的其他设备(即平板电脑、手机、其他 PC 等)上的外观,您需要键入您的 PC 的内部网络 IP 地址,它不同于循环。它可能是例如 192.168.1.1(您应该检查您的 NIC 属性)。如果您尝试向您的朋友进行现场演示,情况可能会发生变化。

因此,为了防止您每次都检查哪个 IP 地址对您的 PC 有效,您可以0.0.0.0告诉您的应用程序“侦听来自所有 NIC 的传入请求,无论它们拥有什么 IP 地址”。


Pro*_*o Q 5

对我来说app.run(debug=False)使用时有效

port = int(os.environ.get('PORT', 5000))
app.run(host='0.0.0.0', port=port)
Run Code Online (Sandbox Code Playgroud)

没有。

我无法判断这是否是防火墙问题或为什么它不起作用。请注意,执行此操作后,它开始托管在http://127.0.0.1:5000/.