¿Cómo llamo a una vista de Flask desde otra?

Tengo una API JSON en un módulo de blueprint y una interfaz web en otro.

Me gustaría eliminar algunas solicitudes de AJAX que el código JS del cliente tendría que hacer incorporando algunos de los JSON que necesitará en la plantilla de la vista frontal, antes de enviarlo al cliente, como en este resumen que encontré .

¿Cómo llamo a una vista Frask desde otra vista Flask?

Podría haber llamado directamente a la función de vista, pero la request correspondería a la solicitud “externa”, y esto confunde la función de API llamada. He intentado usar test_request_context y casi funciona, pero no puedo descubrir cómo mantener la autenticación (estoy usando Flask-Login).

Puedes usar un cliente de prueba de Flask para esto:

 client = app.test_client() response = client.get('/your/url', headers=list(request.headers)) 

Para mantener la autenticación con Flask-Login, debe pasar los encabezados de su solicitud.

Gracias a Chris McKinnel por responder una pregunta relacionada .