Kom igångKom igång gratis

Hantera content-type-fel

Vad händer när du begär ett svar i ett specifikt format som servern inte kan tillhandahålla? Säg att du vill ta emot svaret i XML i stället för JSON. Om servern inte kan svara i XML returnerar den en specifik statuskod som indikerar att det begärda formatet inte stöds. Statuskoden i det här fallet är 406 Not Acceptable, eller kortfattat 406. Serverns svar innehåller också ofta en accept-header med en lista över alla svarsformat som den kan använda. Använd den för att ta reda på vilka content-typer som API:et stöder.

Den här övningen är en del av kursen

Introduktion till API:er i Python

Visa kurs

Övningsinstruktioner

  • Lägg till en accept-header för att begära ett svar i content-typen application/xml från servern.
  • Kontrollera om servern avvisade begäran med hjälp av relevant statuskod.
  • Skriv ut en lista över godkända content-typer från serverns svar.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod