Para que aceptara acentos, tuve que utilizar json.loads(request.data.decode(‘latin-1’)) en vez de request.get_json(force=True). ¿Alguien conoce una solución más elegante? Gracias.
-
check_circle_outlineMódulo 1 | 18 clases
Introducción
expand_more-
done_all
Clase 1
Introducción
-
done_all
Clase 2
Crear servidor
-
done_all
Clase 3
Archivo de configuración
-
done_all
Clase 4
Conexión a base de datos con SQLAlchemy
-
done_all
Clase 5
Modelo de tareas
-
done_all
Clase 6
Endpoints
-
done_all
Clase 7
Funciones de respuesta
-
done_all
Clase 8
Insertar registros
-
done_all
Clase 9
Listado de tareas
-
done_all
Clase 10
Mostrar tarea
-
done_all
Clase 11
Not Found
-
done_all
Clase 12
Pruebas unitarias
-
done_all
Clase 13
Test not found
-
done_all
Clase 14
Crear tarea
-
done_all
Clase 15
Test crear tareas
-
done_all
Clase 16
Actualizar tareas
-
done_all
Clase 17
Test actualizar tareas
-
done_all
Clase 18
Eliminar tareas
-
-
check_circle_outlineMódulo 2 | 6 clases
Extra
expand_more
7 comentario(s)
Hola. No se si vera este comentario pero estoy tratando de probar la aplicación mediante postman (ya que no me funcionan los test unitarios (me tira un error de assertionError)) y no importa que le pase, me muestra la info de bad_request()
la url esta bien y los datos que le paso son los mismo que ud.
ya nose que hacer. gracias :(
A mí me generaba error al ejecutar el curl , pero lo resolví poniendo la diagonal al final en la ruta
curl -i -H "Content-type: application/json" -X POST -d '{"title":"Nuevo titulo","description":"Nueva descripcion", "deadline":"2020-04-10"}' http://127.0.0.1:5000/api/v1/tasks/
No se por que paso eso, si sea la versión de flask , por que en el video no lo muestra , lo pongo por si a alguien más le ocurre.
sqlalchemy.exc.DataError: (psycopg2.errors.InvalidTextRepresentation) la sintaxis de entrada no es válida para tipo integer: «a»
LINE 3: WHERE tasks.id = 'a'
^
[SQL: SELECT tasks.id AS tasks_id, tasks.title AS tasks_title, tasks.description AS tasks_description, tasks.deadline AS tasks_deadline, tasks.created_at AS tasks_created_at
FROM tasks
WHERE tasks.id = %(id_1)s
LIMIT %(param_1)s]
[parameters: {'id_1': 'a', 'param_1': 1}]
(Background on this error at: http://sqlalche.me/e/9h9h)
127.0.0.1 - - [03/Jun/2020 12:01:46] "[35m[1mGET /api/v1/tasks/a HTTP/1.1[0m" 500 -
127.0.0.1 - - [03/Jun/2020 12:03:06] "[33mGET /api/v1/tasks/3 HTTP/1.1[0m" 404 -
127.0.0.1 - - [03/Jun/2020 12:03:12] "[37mGET /api/v1/tasks HTTP/1.1[0m" 200 -
curl: (6) Could not resolve host: Nueva tarea,
curl: (6) Could not resolve host: description
curl: (6) Could not resolve host: Nueva descripcion,
curl: (6) Could not resolve host: deadline
curl: (3) [globbing] unmatched close brace/bracket in column 17
HTTP/1.0 400 BAD REQUEST
Content-Type: text/html; charset=utf-8
Content-Length: 187
Server: Werkzeug/1.0.1 Python/3.8.1
Date: Tue, 28 Apr 2020 03:07:05 GMT
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>400 Bad Request</title>
<h1>Bad Request</h1>
<p>Failed to decode JSON object: Expecting value: line 1 column 1 (char 0)</p>