在Flask-RESTful中,获取请求的IP地址通常涉及解析HTTP请求头中的X-Forwarded-For
或Remote_Addr
字段。以下是一个简单的示例,展示了如何在Flask-RESTful的GET方法中打印请求的IP地址:
from flask import Flask, request
from flask_restful import Api, Resource
app = Flask(__name__)
api = Api(app)
class MyResource(Resource):
def get(self):
# 尝试获取客户端IP地址
client_ip = request.headers.get('X-Forwarded-For', request.remote_addr)
# 打印IP地址
print(f"Client IP: {client_ip}")
# 返回响应
return {"message": f"Your IP is {client_ip}"}, 200
api.add_resource(MyResource, '/get-ip')
if __name__ == '__main__':
app.run(debug=True)
X-Forwarded-For
头是否正确设置。X-Forwarded-For
头,或者在代码中优先使用该头。ngrok
进行外部访问测试。通过上述示例和解释,你应该能够在Flask-RESTful应用中成功获取并打印请求的IP地址。
领取专属 10元无门槛券
手把手带您无忧上云