在部署代码时,可以使用Python Flask获取公网和内网IP地址的方法如下:
from flask import Flask, request
app = Flask(__name__)
@app.route('/')
def get_public_ip():
public_ip = request.remote_addr
return "Public IP: {}".format(public_ip)
if __name__ == '__main__':
app.run()
这段代码创建了一个Flask应用,并定义了一个路由 /
。当访问该路由时,使用 request.remote_addr
可以获取到请求的公网IP地址。
import socket
def get_local_ip():
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(('8.8.8.8', 80))
local_ip = s.getsockname()[0]
s.close()
return local_ip
这段代码使用socket库创建了一个UDP套接字,并连接到Google的DNS服务器IP地址(8.8.8.8)和80端口。通过 s.getsockname()[0]
可以获取本地IP地址。
from flask import Flask, request
app = Flask(__name__)
@app.route('/')
def get_ip():
public_ip = request.remote_addr
local_ip = get_local_ip()
return "Public IP: {}, Local IP: {}".format(public_ip, local_ip)
def get_local_ip():
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect(('8.8.8.8', 80))
local_ip = s.getsockname()[0]
s.close()
return local_ip
if __name__ == '__main__':
app.run()
这段代码在路由 /
中同时获取公网IP和内网IP,并返回给客户端。
腾讯云相关产品:
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云