220 votes

Que signifie "406-Not Acceptable Response" dans le protocole HTTP ?

Dans mon application Ruby on Rails, j'ai essayé de télécharger une image par le biais de POSTMAN. REST client en Base64 format. Lorsque je POST l'image, j'obtiens une 406 Réponse non acceptable . Lorsque j'ai vérifié ma base de données, l'image était présente et a été enregistrée avec succès.

Quelle est la raison de cette erreur ? Y a-t-il quelque chose que je dois spécifier dans mon en-tête ?

Ma demande :

URL --- http://localhost:3000/exercises.json

En-tête :

Content-Type  -  application/json

Données brutes :

{
    "exercise": {
        "subbodypart_ids": [
            "1",
            "2"
        ],
        "name": "Exercise14"
    },
    "image_file_name": "Pressurebar Above.jpg",
    "image":"******base64 Format*******"
}

3voto

Joao Ventura Points 178
const request = require('request');

const headers = {
    'Accept': '*/*',
    'User-Agent': 'request',
};

const options = {
    url: "https://example.com/users/6",
    headers:  headers
};

request.get(options, (error, response, body) => {
    console.log(response.body);
});

3voto

Kunal Tyagi Points 21

Changer l'en-tête en Accept: */* a résolu mon problème et assurez-vous que vous n'avez pas d'autre En-tête d'acceptation

2voto

Kadir Erturk Points 427

Dans mon cas, j'ai ajouté :

Content-Type: application/x-www-form-urlencoded

a complètement résolu mon problème.

0voto

Si vous utilisez 'request.js', vous pouvez utiliser ce qui suit :

var options = {
  url: 'localhost',
  method: 'GET',
  headers:{
    Accept: '*/*'
  }
}

request(options, function (error, response, body) {
  ...
})

0voto

Francois Borgies Points 1078

Dans mon cas, pour une API dans .NET-Core, l'API est configurée pour fonctionner avec XML (par défaut, elle est configurée pour répondre avec JSON), donc j'ajoute cette annotation dans mon contrôleur :

[Produces("application/xml")]
public class MyController : ControllerBase {...}

Merci de m'avoir mis sur la voie !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X