¿Cómo usar los métodos PUT/POST/DELETE en NodeJS directamente en el navegador?
router.put('/sync/:syncId', (req, res) => { res.send(JSON.stringify({ "status": 200, "error": false, "response": "HELLO WORLD" })); });Así es como accedo al punto final en el navegador y Postman:
http://localhost:4600/v1/fetchprojdetails/delete/1Cuando uso el código anterior en el navegador, el enrutador actúa de forma extraña y no funciona. No muestra la declaración res.send() ni ninguna declaración de console.log() si hay alguna en la función anterior, pero cuando intento lo mismo en Postman usando el método HTTP respectivo (PUT/POST/DELETE), entonces funciona como debería. Lo mismo funciona cuando cambio el código anterior y reemplazo router.delete() con router.get().
¿Puede alguien explicarme por qué se ve este comportamiento en el navegador y POSTMAN? ¿Es para que el navegador no pueda entender directamente los métodos PUT/POST y DELETE?
Postman es una herramienta diseñada para realizar solicitudes HTTP personalizadas para que los desarrolladores puedan probar las API. Los navegadores son herramientas diseñadas para mostrar páginas web y ejecutar aplicaciones web integradas en ellas.
Si inserta una URL en la barra de direcciones del navegador, realizará una solicitud GET. La barra de direcciones es una interfaz de usuario que permite obtener una página web y mostrársela al usuario.
Si desea realizar una solicitud POST, debe cargar un documento HTML que contenga un <form ... method="POST"> o JavaScript que realice una solicitud Ajax.
Si desea usar cualquier otro verbo, debe usar una solicitud Ajax.