gpt4 book ai didi

python - Flask Python - 将主机更改为 0.0.0.0 后,Put 请求仅返回 404

转载 作者:行者123 更新时间:2023-11-30 23:04:54 40 4
gpt4 key购买 nike

将 .py 脚本设置为 app.run(host='0.0.0.0') 后,我的所有 put/get/etc 请求都以 404 结束。

E:\location>c:Python27\python.exe coordinatorSim.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
192.168.0.101 - - [01/Nov/2015 09:19:18] "PUT /patient/start HTTP/1.1" 404 -

我从 wifi 网络中的另一台机器向 192.168.0.103:5000/Patent/start 发送请求,这是运行 py 脚本的机器的 IP。

如果我删除 app.run(host='0.0.0.0'),则请求在默认本地主机地址 127.0.0.1:5000 上起作用(假设我将请求发送到 127.0.0.103:5000/patent/start)

我缺少什么?

放置请求是:

app = Flask(__name__)
app.debug = True
app.run(host='0.0.0.0')
sSocket = None
......
# Creates client for socket communication. The http client supplies the IP address and port no.
@app.route('/patient/start', methods = ['PUT'])
#@requires_auth
def patient_start():
global sThreadStarted
global sSocket
global sSocketThread
# If the client is already started, return an error code !?
#print "JSON:", request.json

if len(request.json) > 0:

l_address = request.json["address"]
l_port = request.json["port"]
# Start client
print l_address, l_port
try:

sSocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
except socket.error, e:
return "Error creating socket: " + e
try:

sSocket.connect((l_address, int(l_port)))
except socket.gaierror, e:
return "Address error: " + e
except socket.error, e:
return "Connection error: " + e

try:
sThreadStarted = True
sSocketThread.start()
except threading.ThreadError, e:
return "Threading error: " + e

message = {
'status': 200,
'message': 'Socket created'
}
resp = jsonify(message)
resp.status_code = 200

return resp
else:
return bad_request()

最佳答案

我在 Amazon EC2 上托管 Flask React 应用程序时遇到了这个问题。我花了几个小时才解决这个问题。

解决方案是在 Flask 应用程序的 settings.py 文件中设置 SERVER_NAME = None

所有功劳归于Ronhanson对于他对 Github 的评论.

重申一下:

  1. 在 EC2 安全组入站规则中打开端口 5000
  2. 在manage.py中添加行app.run(host='0.0.0.0')
  3. 在settings.py中更新SERVER_NAME = None

按照上述步骤操作,您的应用就可以从外部网络访问。

关于python - Flask Python - 将主机更改为 0.0.0.0 后,Put 请求仅返回 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33460109/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com