J'ai un fetch où les types de requêtes semblent changer ce qui gâche mon post. Je soumets mon formulaire de base (un seul champ). Voici le fetch.React - fetch Le type de contenu change lors de la visualisation dans fiddler
handleSubmit(event, data) {
//alert('A name was submitted: ' + this.state.value);
event.preventDefault();
console.log("SUBMIT STATE::", this.state.value);
return (
fetch("//localhost:5000/api/values/dui/", {
method: "post",
mode: 'no-cors',
headers: {
'Access-Control-Allow-Origin': '*',
'Content-Type': 'application/json',
'Accept': 'application/json',
},
body: JSON.stringify({
name: this.state.value,
})
}).then(response => {
if (response.status >= 400) {
this.setState({
value: 'no greeting - status > 400'
});
throw new Error('no greeting - throw');
}
return response.text()
}).then(data => {
var myData = JSON.parse(data);
this.setState({
greeting: myData.name,
path: myData.link
});
}).catch(() => {
this.setState({
value: 'no greeting - cb catch'
})
})
);
}
Mais quand je regarde cela dans le type de contenu Fiddler est maintenant 'type de contenu: text/plain; charset = UTF-8'. Voici le Fiddler brut:
POST http://localhost:5000/api/values/dui/ HTTP/1.1
Host: localhost:5000
Connection: keep-alive
Content-Length: 16
accept: application/json
Origin: http://evil.com/
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
-type de contenu: text/plain; charset = UTF-8 Referer: http://localhost:3000/ Accept-Encoding: gzip, dégonfler, br Accept-Language: fr-fr, fr ; q = 0,8
{"name":"molly"}
Dans DOM Inspector Je vois simplement:
POST http://localhost:5000/api/values/dui/ 415 (type de média non géré)
Je trouve aussi étrange que «accepter» soit en minuscules ou en «type de contenu». Toute raison pour laquelle cela se produit. Je n'ai encore rien trouvé de spécifique dans mes recherches.