apuntes:servicios_web
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
apuntes:servicios_web [2018/02/19 19:45] – [Definir la Base de Datos] Santiago Faci | apuntes:servicios_web [2019/01/04 13:22] – external edit 127.0.0.1 | ||
---|---|---|---|
Line 335: | Line 335: | ||
{{ youtube> | {{ youtube> | ||
+ | ==== Depuración de Servicios Web ==== | ||
+ | |||
+ | La primera aproximación a la hora de depurar los Servicios Web desarrollados es utilizar el navegador introduciendo las URLs esperando obtener la salida apropiada y comprobar asi que todo funciona correctamente. Es bastante cómodo pero fácil de usar y eficiente, hasta un punto. | ||
+ | |||
+ | Si lo que queremos es depurar totalmente, y de una forma profesional, | ||
+ | |||
+ | < | ||
+ | {{ postman.png }} | ||
+ | < | ||
===== Consumir un servicio web desde Django ===== | ===== Consumir un servicio web desde Django ===== | ||
Line 340: | Line 349: | ||
<code bash> | <code bash> | ||
- | santi@zenbook: | + | santi@zenbook: |
</ | </ | ||
Line 354: | Line 363: | ||
</ | </ | ||
- | En nuestro caso vamos a concectar con un servicio web que ofrece datos sobre opiniones de usuarios de forma que obtenemos, entre otros, un titulo, un texto y una puntuación. Entonces crearemos un modelo de datos '' | + | En nuestro caso vamos a concectar con un servicio web que ofrece datos sobre opiniones de usuarios de forma que obtenemos, entre otros, un titulo, un texto y una puntuación. Entonces crearemos un modelo de datos '' |
<file python models.py> | <file python models.py> | ||
Line 362: | Line 371: | ||
texto = models.CharField(max_length=200) | texto = models.CharField(max_length=200) | ||
puntuacion = models.IntegerField | puntuacion = models.IntegerField | ||
+ | pelicula = models.CharField(max_length=200) | ||
. . . | . . . | ||
</ | </ | ||
Line 374: | Line 384: | ||
class OpinionSerializer(serializers.ModelSerializer): | class OpinionSerializer(serializers.ModelSerializer): | ||
class Meta: | class Meta: | ||
- | fields = (' | + | fields = (' |
model = Opinion | model = Opinion | ||
</ | </ | ||
+ | |||
+ | Desde Django podríamos acceder al servicio web para listar todas las opiniones: | ||
+ | |||
+ | <file python views.py> | ||
+ | import requests | ||
+ | . . . | ||
+ | def opiniones(request): | ||
+ | ws = requests.get(' | ||
+ | json = ws.json() | ||
+ | serializer = OpinionSerializer(data=json, | ||
+ | if serializer.is_valid(): | ||
+ | lista_opiniones = serializer.save() | ||
+ | context = {' | ||
+ | return render(request, | ||
+ | else: | ||
+ | print(serializer.errors) | ||
+ | |||
+ | return render(request, | ||
+ | . . . | ||
+ | </ | ||
+ | |||
+ | O bien acceder a las opiniones para una pelicula determinada, | ||
<file python views.py> | <file python views.py> | ||
Line 408: | Line 440: | ||
. . . | . . . | ||
</ | </ | ||
+ | |||
+ | ===== Seguridad en Servicios Web ===== | ||
---- | ---- |
apuntes/servicios_web.txt · Last modified: 2021/10/21 06:56 by Santiago Faci