Spaces:
Build error
Build error
import os | |
from fastapi import FastAPI, HTTPException | |
from fastapi.responses import FileResponse | |
from fastapi.middleware.cors import CORSMiddleware | |
app = FastAPI() | |
# Add CORS middleware | |
app.add_middleware( | |
CORSMiddleware, | |
allow_origins=["*"], | |
allow_credentials=True, | |
allow_methods=["*"], | |
allow_headers=["*"], | |
) | |
COG_DIRECTORY = "/data/cogs" | |
async def root(): | |
return {"message": "Welcome to the COG Server"} | |
async def list_cogs(): | |
cogs = [f for f in os.listdir(COG_DIRECTORY) if f.endswith('.tif')] | |
return {"cogs": cogs} | |
async def get_cog(cog_name: str): | |
file_path = os.path.join(COG_DIRECTORY, cog_name) | |
if not os.path.exists(file_path): | |
raise HTTPException(status_code=404, detail="COG not found") | |
return FileResponse(file_path, media_type="image/tiff") | |
if __name__ == "__main__": | |
import uvicorn | |
uvicorn.run(app, host="0.0.0.0", port=7860) |