ComeçarComece gratuitamente

Manipulação de erros de tipos de conteúdo

O que acontece quando você solicita uma resposta em um formato específico, mas o servidor não consegue atender a essa solicitação? Digamos que você queira receber a resposta em XML em vez de JSON. Se o servidor não puder responder em XML, ele responderá com um código de status específico indicando que não pode responder no formato solicitado. O código de status usado nesse caso é 406 Not Acceptable ou 406, de forma abreviada. A resposta do servidor também contém frequentemente um cabeçalho accept que inclui uma lista de todos os formatos de resposta com os quais ele pode responder. Use isso para saber com quais tipos de conteúdo a API pode responder.

Este exercício faz parte do curso

Introdução às APIs em Python

Ver Curso

Instruções de exercício

  • Adicione um cabeçalho accept para solicitar uma resposta no tipo de conteúdo application/xml do servidor.
  • Verifique se o servidor não aceitou a solicitação usando o código de status relevante.
  • Imprima uma lista dos tipos de conteúdo aceitos na resposta do servidor.

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# Add a header to use in the request
headers = {____}
response = requests.get('http://localhost:3000/lyrics', headers=headers)

# Check if the server did not accept the request
if (response.____ == ____):
  print('The server can not respond in XML')
  
  # Print the accepted content types
  print('These are the content types the server accepts: ' + response.____)
else:
  print(response.text)
Editar e executar código