Partilhar via


Aceder a cabeçalhos HTTP passados para aplicações Databricks

O Databricks Apps passa cabeçalhos HTTP específicos X-Forwarded-* do proxy reverso para seu aplicativo. Use esses cabeçalhos para acessar informações sobre a solicitação original, como o endereço IP do cliente ou o protocolo.

Databricks Apps inclui os seguintes X-Forwarded-* cabeçalhos em solicitações que são encaminhadas do proxy reverso para o seu aplicativo:

Cabeçalho Descrição
X-Forwarded-Host O host ou domínio original solicitado pelo cliente.
X-Forwarded-Preferred-Username O nome de usuário fornecido pelo IdP.
X-Forwarded-User O identificador de usuário fornecido pelo IdP.
X-Forwarded-Email O e-mail do usuário fornecido pelo IdP.
X-Real-Ip O endereço IP do cliente que fez a solicitação original.
X-Request-Id O UUID do pedido.

Acessar cabeçalhos no código

Você pode aceder a cabeçalhos encaminhados no código da sua aplicação usando o objeto de pedido fornecido pelo seu framework web. O exemplo abaixo mostra como recuperar o X-Forwarded-User cabeçalho usando estruturas Python populares:

Frasco

from flask import Flask, request

app = Flask(__name__)

@app.route("/")
def index():
    user = request.headers.get("x-forwarded-user")
    return f"Hello, {user}!"

API Rápida

from fastapi import FastAPI, Request

app = FastAPI()

@app.get("/")
async def index(request: Request):
    user = request.headers.get("x-forwarded-user")
    return {"message": f"Hello, {user}!"}

Esses cabeçalhos só estão disponíveis quando o aplicativo é executado dentro do Databricks Apps. Ao testar localmente, você deve simulá-los ou incluí-los manualmente.