Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| def echo(text, request: gr.Request): | |
| if request: | |
| print("Request headers dictionary:", request.headers) | |
| print("IP address:", request.client.host) | |
| print("Query parameters:", dict(request.query_params)) | |
| return request.headers, request.client.host | |
| def echo_load(request: gr.Request): | |
| if request: | |
| print("Request headers dictionary:", request.headers) | |
| print("IP address:", request.client.host) | |
| print("Query parameters:", dict(request.query_params)) | |
| user_agent = request.headers["user-agent"] | |
| device_type = detect_device(user_agent) | |
| if "Mobile" in user_agent or "Android" in user_agent or "iPhone" in user_agent: | |
| return request.headers, "Mobile Device", gr.Textbox(visible=False), gr.Textbox(visible=True) | |
| else: | |
| return request.headers, "Web Browser", gr.Textbox(visible=True), gr.Textbox(visible=False) | |
| with gr.Blocks() as demo: | |
| with gr.Row(): | |
| with gr.Column(): | |
| tb = gr.Textbox() | |
| submit = gr.Button('submit') | |
| with gr.Column(): | |
| js = gr.JSON() | |
| tb1 = gr.Textbox() | |
| tb2 = gr.Textbox(label='Visible only when you are on a Web-browser') | |
| tb3 = gr.Textbox(label='Visible only when you are on a Mobile device') | |
| submit.click(echo, tb, [js, tb1]) | |
| demo.load(echo_load, [], [js,tb1, tb2, tb3]) | |
| demo.launch() |