Para ejecutar el backend:
-
Generar el .war con
gradle war
-
Desplegar el fichero .war vía tomcat u otro, en
http://localhost:8080/myusick/
-
La aplicación es accesible desde
http://localhost:8080/myusick/
El index.html se abre automáticamente, con eso el frontend queda desplegado
-
Los endpoints son accesibles desde
http://localhost:8080/myusick/api/
Adicionalmente, esa URL muestra el directorio de endpoints
Verb | URI | Consumes | Response-Type | Definition |
---|---|---|---|---|
GET | / | text/plain | Lista el directorio de servicios | |
POST | /auth | application/x-www-form-urlencoded | application/json | Autentica a un usuario |
POST | /register | application/json | application/json | Registra a un usuario |
GET | /profile/{userid} | PathParam(userid: int) | application/json | Saca los datos de perfil del usuario {userid} |
POST | /newgroup | application/json | application/json | Crea un grupo para un usuario |
POST | /newtag | application/json | application/json | Crea y/o añade un tag a un usuario |
POST | /post | application/json | application/json | Crea un post para un usuario |
GET | /post/{id} | PathParam(id: int) | application/json | Busca el comentario cuyo id es {id} |
PUT | /follow/{seguidor}/{seguido} | PathParam(seguidor: int, seguido: int) | application/json | El usuario {seguidor} sigue a {seguido} |
DELETE | /unfollow/{seguidor}/{seguido} | PathParam(seguidor: int, seguido: int) | application/json | El usuario {seguidor} deja de seguir a {seguido} |
GET | /isfollowing/{seguidor}/{seguido} | PathParam(seguidor: int, seguido: int) | application/json | Comprueba si el usuario {seguidor} sigue a {seguido} |
PUT | /band/apply/{bandid}/{userid} | PathParam(bandid: int, userid: int) | application/json | Agrega un nuevo miembro {userid} pendiente de aceptacion a la banda {bandid} |
DELETE | /band/leave/{bandid}/{userid} | PathParam(bandid: int, userid: int) | application/json | Elimina un nuevo miembro {userid} existente de la banda {bandid} |
PUT | /band/accept/{bandid}/{userid} | PathParam(bandid: int, userid: int) | application/json | Acepta un nuevo miembro {userid} en la banda {bandid} |
DELETE | /band/reject/{bandid}/{userid} | PathParam(bandid: int, userid: int) | application/json | Rechaza un nuevo miembro {userid} en la banda {bandid} |
GET | /band/applicants/{bandid} | PathParam(bandid: int) | application/json | Busca los miembros pendientes de aceptacion de la banda cuyo id es {bandid} |
GET | /groups/{userid} | PathParam(userid: int) | application/json | Busca los grupos del usuario cuyo id es {userid} |
GET | /last/{userid} | PathParam(userid: int) | application/json | Busca los ultimos mensajes de los publicantes a los cuales esta suscrito el usuario cuyo id es {userid} |
GET | /search/person/{term} | PathParam(term: string) | application/json | Busca todas las personas cuyo nombre incluya {term} |
GET | /search/group/{term} | PathParam(term: string) | application/json | Busca todos los grupos cuyo nombre incluya {term} |
GET | /search/tag/{term} | PathParam(term: string) | application/json | Busca todos los publicantes que tengan la etiqueta {term} |
GET | /search/skill/{term} | PathParam(term: string) | application/json | Busca todas las personas que tengan la aptitud {term} |
POST | /edit/profile | application/json | application/json | Edita el perfil de un publicante con los valores recibidos |
Verb | URI | Consumes | Response-Type | Definition |
---|---|---|---|---|
GET | /ws/sub/{id} | PathParam(id: int) | text/event-stream | Suscribe a un usuario a su canal |
DELETE | /ws/unsub/{id} | PathParam(id: int) | text/event-stream | Desuscribe a un usuario de su canal |
- Chrome > 6
- Safari > 6
- Firefox > 6
- Opera > 11.5
- IE > 9 NO SSE
Magic doc
-
Importar proyecto como Proyecto Gradle
-
Crear una nueva configuración de ejecución Run > Edit Configurations...
-
Seleccionar Tomcat Server > local
-
En Application Server pulsar Configure...
-
Pulsar + y seleccionar el HOME de Tomcat (recomendable xampp) y aceptamos en ambas ventanas
-
En la ventana Run/Debug configurations (la primera de todas) damos nombre a esta configuración
-
En la pestaña deployment pulsamos + > External Source... y seleccionamos <proyecto>/build/libs/<proyecto>.war
-
Una vez seleccionado en Application context: escribimos /<proyecto>
-
[OPCIONAL] En el diálogo Before launch: podemos agregar la tarea de gradle war
Esto nos evita tener que construir el .war antes de lanzar el servidor, pero igualmente, antes de redesplegar va a haber que crear el .war de nuevo, así que no tiene mucha importancia
-
Aplicamos, aceptamos y estamos listos para desplegar :D