Personalizar de forma simple la ruta de nuestras Azure Functions
En una entrada anterior, mostraba como personalizar la ruta de todas nuestras Azure Functions a través del fichero host.json de la Azure Function App.
Sin embargo, puede ser que en un momento dado queramos personalizar nuestras Azure Functions para que respondan a diferentes URLs concretas.
En concreto y a modo de ejemplo, me estoy poniendo en el caso teórico de que tengamos dos funciones que queramos versionar dentro de la misma Azure Function App.
Imaginemos por lo tanto que tenemos una Azure Function cuyo nombre es xxx y otra cuyo nombre es yyy.
Si antedemos a la URL que por defecto Azure Functions nos dará, estas funciones responderán a las URLs:
https://<functionapp>.azurewebsites.net/api/xxx
https://<functionapp>.azurewebsites.net/api/yyy
Sin embargo, mi intención es que respondan a las URLs:
https://<functionapp>.azurewebsites.net/api/v1/MyAzureFunction
https://<functionapp>.azurewebsites.net/api/v2/MyAzureFunction
Para poder llevar a cabo esto, bastará con acceder desde el Portal de Azure a cada una de las funciones, y acceder a la opción de ver todos los ficheros de cada Azure Function y hacer clic sobre el archivo function.json.
Dentro de este archivo, no veremos nada concreto que nos dé una pista clara de dónde cambiar la ruta de nuestra Azure Function.
Nos situaremos entonces dentro del archivo function.json en el grupo «bindings», y crearemos una nueva propiedad denominada: «route».
Y como valor de route, pondremos la ruta que queremos utilizar.
En mi caso y para la Azure Function que deseo que sea la v1 de la misma:
«route»:»v1/MyAzureFunction»,
Y del mismo modo y para la otra Azure Function que deseo que sea la v2:
«route»:»v2/MyAzureFunction»,
Guardaremos los cambios y nuestras Azure Functions responderán ahora a las URLs que queríamos.
Happy Coding!