Header to toggle full response
This commit is contained in:
parent
273e341789
commit
df1c24daa6
42
main.py
42
main.py
|
@ -7,15 +7,8 @@ import netifaces
|
||||||
app = FastAPI()
|
app = FastAPI()
|
||||||
|
|
||||||
@app.get("/")
|
@app.get("/")
|
||||||
def root(request: Request):
|
def root(request: Request, x_full_response: bool = Header(False)):
|
||||||
interfaces = {}
|
response = {
|
||||||
for interface in netifaces.interfaces():
|
|
||||||
interfaces[interface] = []
|
|
||||||
for link in netifaces.ifaddresses(interface).values():
|
|
||||||
for group in link:
|
|
||||||
interfaces[interface].append(group['addr'])
|
|
||||||
|
|
||||||
return {
|
|
||||||
"method": request.method,
|
"method": request.method,
|
||||||
"url": {
|
"url": {
|
||||||
"url": request.url._url,
|
"url": request.url._url,
|
||||||
|
@ -32,14 +25,27 @@ def root(request: Request):
|
||||||
"host": {
|
"host": {
|
||||||
"hostname": platform.node(),
|
"hostname": platform.node(),
|
||||||
"fqdn": socket.getfqdn(),
|
"fqdn": socket.getfqdn(),
|
||||||
"python": platform.python_version(),
|
|
||||||
|
|
||||||
"os": {
|
|
||||||
"system": platform.system(),
|
|
||||||
"release": platform.release(),
|
|
||||||
"version": platform.version(),
|
|
||||||
},
|
|
||||||
|
|
||||||
"ip-addresses": interfaces,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if not x_full_response:
|
||||||
|
return response
|
||||||
|
|
||||||
|
interfaces = {}
|
||||||
|
for interface in netifaces.interfaces():
|
||||||
|
interfaces[interface] = []
|
||||||
|
for link in netifaces.ifaddresses(interface).values():
|
||||||
|
for group in link:
|
||||||
|
interfaces[interface].append(group['addr'])
|
||||||
|
|
||||||
|
response["host"].update({
|
||||||
|
"python": platform.python_version(),
|
||||||
|
|
||||||
|
"os": {
|
||||||
|
"system": platform.system(),
|
||||||
|
"release": platform.release(),
|
||||||
|
"version": platform.version(),
|
||||||
|
},
|
||||||
|
|
||||||
|
"ip-addresses": interfaces,
|
||||||
|
})
|
||||||
|
return response
|
||||||
|
|
Loading…
Reference in New Issue