Creación de una aplicación web Node.js para llamar a una API
Se aplica a: inquilinos de personal inquilinos externos (más información)
En este artículo, preparará el proyecto de aplicación que creó en Tutorial: preparación del inquilino externo para iniciar sesión de usuarios en una aplicación web de Node.js para llamar a una API web. Este artículo es la segunda parte de una serie de guías de cuatro partes.
Requisitos previos
- Complete los pasos de la primera parte de esta serie de guías: Preparación del inquilino externo para llamar a una API en una aplicación web de Node.js.
Actualización de los archivos del proyecto
Cree más archivos, fetch.js, todolistController.js, todos.js, todos.hbs y .env, y organícelos para lograr la siguiente estructura del proyecto:
ciam-sign-in-call-api-node-express-web-app/
├── .env
└── server.js
└── app.js
└── authConfig.js
└── fetch.js
└── package.json
└── auth/
└── AuthProvider.js
└── controller/
└── authController.js
└── todolistController.js
└── routes/
└── auth.js
└── index.js
└── todos.js
└── users.js
└── views/
└── layouts.hbs
└── error.hbs
└── id.hbs
└── index.hbs
└── todos.hbs
└── public/stylesheets/
└── style.css
Instalar las dependencias de la aplicación
En su terminal, instale más paquetes Node, axios
, cookie-parser
, body-parser
, method-override
, ejecutando el siguiente comando:
npm install axios cookie-parser body-parser method-override
Actualización de los componentes de la interfaz de usuario de la aplicación
En su editor de código, abra el archivo views/index.hbs y después agregue un vínculo Ver su lista de tareas pendientes:
<a href="/todos">View your todolist</a>
El archivo views/index.hbs ahora es similar al siguiente:
<h1>{{title}}</h1> {{#if isAuthenticated }} <p>Hi {{username}}!</p> <a href="/users/id">View your ID token claims</a> <br> <a href="/todos">View your todolist</a> <br> <a href="/auth/signout">Sign out</a> {{else}} <p>Welcome to {{title}}</p> <a href="/auth/signin">Sign in</a> {{/if}}
Agregamos un vínculo a una interfaz de usuario que le permite interactuar con ciam-ToDoList-api. Definimos la ruta rápida para este punto de conexión más adelante en esta guía.
En el editor de código, abra el archivo
views/todos.hbs
y agregue el siguiente código:<h1>Todolist</h1> <div> <form action="/todos" method="POST"> <input type="text" name="description" class="form-control" placeholder="Enter a task" aria-label="Enter a task" aria-describedby="button-addon"> <button type="submit" id="button-addon">Add</button> </form> </div> <div class="row" style="margin: 10px;"> <ol id="todoListItems" class="list-group"> {{#each todos}} <li class="todoListItem" id="todoListItem"> <span>{{description}}</span> <form action='/todos?_method=DELETE' method='POST'> <span><input type='hidden' name='_id' value='{{id}}'></span> <span><button type='submit'>Remove</button></span> </form> </li> {{/each}} </ol> </div> <a href="/">Go back</a>
Esta vista permite al usuario realizar tareas que inician una llamada API. Por ejemplo, una vez que un usuario inicia sesión y la aplicación adquiere un token de acceso, el usuario puede crear un recurso (tarea) en la aplicación de API mediante el envío de un formulario.
Pasos siguientes
A continuación, aprenda a iniciar la sesión de los usuarios y a adquirir un token de acceso: