Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

137
Views
La solicitud PUT funciona en Postman pero no en React

Estoy creando una aplicación con la pila MERN que permite crear cuentas y luego publicar o eliminar publicaciones. Antes de que la publicación aparezca en la página principal, debe ser aprobada por un usuario con rango de administrador. Por ahora, estoy tratando de implementar una función en la que el usuario pueda aprobar su propia publicación. Funciona perfectamente en Postman, pero sigue siendo rechazado en el front-end sin ningún mensaje de error.

Aquí están mis archivos backend:

postRoutes.js

 const express = require("express") const router = express.Router() const { getPosts, setPost, updatePost, deletePost } = require("../controllers/postController") const { protect } = require("../middleware/authMiddleware") router.route("/").get(getPosts).post(protect, setPost) router.route("/delete/:id").delete(protect, deletePost) router.route("/update/:id").put(protect, updatePost) module.exports = router

función updatePost en postController.js

 const updatePost = asyncHandler(async (req, res) => { const post = await Post.findById(req.params.id) if (!post) { res.status(400) throw new Error("Post not found") } if (!req.user) { res.status(401) throw new Error("User not found") } if (post.user.toString() !== req.user.id && req.user.admin === false) { res.status(401) throw new Error("User not authorized") } const updatedPost = await Post.findByIdAndUpdate(req.params.id, req.body, { new: true }) res.status(200).json(updatedPost) })

Y archivos frontend:

función updatePost en postService.js

 const updatePost = async (postId, data, token) => { const config = { headers: { Authorization: `Bearer ${token}` } } const response = await axios.put(API_URL + `update/${postId}`, data, config) return response.data }

función updatePost en postSlice.js

 export const updatePost = createAsyncThunk("posts/update/:id", async (postId, postData, thunkAPI) => { try { const token = thunkAPI.getState().auth.user.token return await postService.updatePost(postId, postData, token) } catch (error) { const message = (error.response && error.response.data && error.response.data.message) || error.message || error.toString() return thunkAPI.rejectWithValue(message) } })

botón onClick función en mi componente frontend

 onClick={() => dispatch(updatePost(post._id, { approved: true }))}
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!