My app is adding posts, editing and deleting using mongodb but it does not matter who signs in, anybody can modify any post and what I am trying to do is only allow the user who posted it to be able to do CRDU.
This is my UserProvider.js for client:
import axios from "axios";
import UserContext from "./UserContext";
import React from "react";
export const UserProvider = (props) => {
const baseUrl = "http://localhost:3000/api/users";
function createUser(username, password, firstName, lastName) {
let user = { username, password, firstName, lastName };
// changes here
return axios.post(baseUrl, user)
.then(response => {
return new Promise(resolve => resolve(response.data));
}
);
}
function signInUser(username, password) {
let user = { username, password };
return axios.post(`${baseUrl}/login`, user)
.then(response => {
localStorage.setItem('myCoffeeToken', response.data.token)
return new Promise(resolve => resolve(response.data));
}
);
}
return (
<UserContext.Provider value={{
createUser,
signInUser
}}>
{ props.children }
</UserContext.Provider>
)
}