Je suis nouveau dans l'angulaire et le noeud que j'ai créé un point de fin de repos dans Nodejs qui ressemble à ceci
(Mettre à jour cela fonctionne, mais seulement si je définissais l'en-tête de la demande à l'application / X-www-Form-Urlencodé, mais que le corps Requeus ressemble à {{"rolename": "nouveau rôle"}: ""} Ceci est instancé de { rolename: "newrole"}) et je fais une demande postale d'une application angulaire qui ressemble à ceci p> mais le Un problème est que je suis incapable de définir le corps de la demande lorsque vous utilisez Postman, cela fonctionne comme il le devrait, mais de l'angulaire, le corps est toujours vide que j'ai même essayé d'utiliser à la place, mais le même problème est même essayé de définir les en-têtes et les méthodes dans l'application de nœuds Comme ceci p> mais toujours, aucun succès dans la demande postale, cependant, obtenir la demande fonctionne bien et que j'essaie de faire une demande de post à cette URL de JSON Placeholder https://jsonplaceholder.typicode.com/posts ça marche bien je suis incapable de comprendre quel est le bug et je Connaissez le lien JSON Works car il donne gâte le corps de t Il demande dans la réponse et si je n'utilise pas JSON.Stringify, j'obtiens Erreur Corse, mais selon la documentation doit fonctionner correctement, mais il ne veut pas que la demande d'obtention ressemble à ceci p> } p> si j'ajoute {en-têtes: httpheader} avec l'erreur de Cors de Requeus, mais si utilisez-le sans cela ça marche bien. Je ne peux pas faire mettre en place la suppression ou la demande de poste, mais ils travaillent dans Postman, j'ai même essayé de définir les en-têtes de type de contenu et d'alloe-Acccess, mais rien ne semble fonctionner P> C'est le service angulaire où je fais la demande < / p> ceci est le code de nœud p> si je définis l'en-tête pour obtenir une demande, même si cela freine p> < / p>
3 Réponses :
Vous n'avez pas besoin de régler le corps, vous pouvez transmettre l'objet lui-même. Il suffit de supprimer console.log (json.stringify (rôle)); code> et essayer. P>
Accès à xmlhttprequest à ' 127.0.0.1:3000/Roles ' de l'origine ' Localhost: 4200 'a été bloqué par la stratégie CORS: la réponse à la demande de préfixe ne passe pas la vérification du contrôle d'accès: il n'a pas l'état HTTP OK.
Si la demande d'obtention fonctionne bien, pouvez-vous ajouter le code à la question. Vous devez également réparer toute erreur de Cors que vous obtenez en ajoutant des en-têtes appropriés à la demande.
essayez de régler à la fois angulaire et noeud
Si je le fais dans Angular Même Get Demande donne une erreur Cors
Si j'ajoute de type de contenu dans l'angulaire, j'obtiens une erreur de Cors même si je fais un stringify
Dans votre noeud JS Code, essayez de mettre en place une partie d'origine de la couche intermédiaire avant de lire le corps de la demande entrante. Cela signifie que vous devez déplacer la couche intermédiaire du parseur de corps après la partie d'origine. Pour le code angulaire dans l'en-tête, ajoutez simplement le type de contenu. C'est une supposition, donnez ceci un essai. Peut-être que cela vous aidera.
--- Code angulaire --- p>
Est-ce que cela fonctionne, mais seulement si définit l'en-tête vers l'application / X-www-form-urlencode, mais le corps ressemble alors à ce {{"rolename": "Nouveau"}: ""} Installée de {Rolename: "Nouveau"}
Quel est le type de contenu dans votre application angulaire?
S'il vous plaît montrez-nous le code angulaire complet. y compris où vous définissez l'en-tête.
a vu la question
Si je ne donne pas d'en-têtes, je ne reçois pas d'erreur de Cors, mais le corps ne se met pas en place
J'ai édité ma réponse. Vérifiez que vous espérez que cela vous aidera.
1) Si votre backend est NodeJS, assurez-vous d'installer "Cors":
npm install --save body-parser npm install --save @types/body-parser import bodyParser , {urlencoded} from 'body-parser'; app.use(bodyParser.json()); app.use(urlencoded({ extended: true }));
Qu'est-ce que cette ligne
console.log (JSON.Stringify (rôle)); code> dans votre
Addrole code> Déconnexion de la console?
oui l'utilisait pour voir que les données y arrivent ou non
Ma question est, what b> imprime-t-il sur la console? Pouvez-vous s'il vous plaît ajouter le contenu qui est connecté à votre question?
La console.log en caractères de code angulaire "{" rolename ":" Newrole "}" (Newrole est ce que je passe) et la pièce de connexion de la console NODE imprime l'objet de demande avec un corps vide
{"Rolename": "D"} Il enregistre ceci
Avez-vous essayé de définir les options HTTPHEADRS pour le type de contenu?
Oui, je l'ai fait si je définissais le type de contenu, je reçois une erreur Cors, aucune erreur est que les données sont les données ou JSON I.E I obtenez une erreur CORS, peu importe si je le fais de JSON.Stringifier ou non