Reputation: 9229
I am building out the front end of my MEAN project. My Server side works fine, so if I send a post request to local host, with firstName, lastName, email and password, I get a success response.
Here is my function in Angular:
signUp(user) {
let headers = new Headers();
headers.append('Content-Type', 'application/json');
return this._http
.post('/signup', JSON.stringify({ user }), { headers })
.map(res => res.json())
.map((res) => {
console.log(JSON.stringify({ user }));
return res.success;
});
}
Unfortunately this just returns a success: false
parameter. An example test spat the console log out as:
{"user":{"firstName":"fghnjmkcvbnm","lastName":"dfghjk","email":"[email protected]","password":"fghjk12345456"}}
Any ideas why this isn't working?
Upvotes: 0
Views: 58
Reputation: 202256
In your screenshot, you use application/x-www-form-urlencoded
for the content type.
I would refactor your code this way:
signUp(user) {
let headers = new Headers();
headers.append('Content-Type', 'application/x-www-form-urlencoded');
let user = new URLSearchParams();
user.set('email', 'some email');
user.set('password', 'some password');
user.set('firstName', 'first name');
user.set('lastName', 'last name');
return this._http
.post('/signup', user.toString(), { headers })
.map(res => res.json())
.map((res) => {
console.log(JSON.stringify({ user }));
return res.success;
});
}
Upvotes: 1