Spaces:
Runtime error
Runtime error
import gradio as gr | |
from fastapi import FastAPI | |
from fastapi.middleware.cors import CORSMiddleware | |
class Data(): | |
__init__(self, data): | |
self.data = [[data]] | |
update(self): | |
self.data.append([new_data]) | |
get_data(): | |
return self.data | |
app = FastAPI() | |
data_for_app = new Data("initial data") | |
# Add CORS middleware | |
app.add_middleware( | |
CORSMiddleware, | |
allow_origins=["*"], | |
allow_credentials=True, | |
allow_methods=["*"], | |
allow_headers=["*"], | |
) | |
# Create a simple Gradio interface | |
def greet(name): | |
return f"Hello, {name}!" | |
gr.Blocks() as blocks: | |
gr.Dataframe(value=get_data, label="My Data") | |
# Mount Gradio app to root | |
app = gr.mount_gradio_app(app, interface, path="/") | |
# Custom POST endpoint | |
i = 0 | |
async def custom_endpoint(data: dict): | |
i = i + 1 | |
data_for_app.update(f"New data - item: {i}"); | |
return {"message": "Received data", "data": data} | |
if __name__ == "__main__": | |
import uvicorn | |
uvicorn.run(app, host="0.0.0.0", port=7860) |