POST request works with AJAX but not with fetch
up vote
0
down vote
favorite
I need to make a post call to get a token. I wanted to use fetch but I keep getting a 500 error. (jquery ajax request worked fine, but I am using react and I want to avoid installing jquery just for this). What is the difference here?
AJAX (works fine, I get a token back)
var settings = {
"async": false,
"crossDomain": true,
"url": "https://api.com/oauth2/token",
"method": "POST",
"headers": {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": "postmantoken"
},
"data": {
"client_id": clientId,
"client_secret": clientSecret,
"grant_type": "password",
"username": username,
"password": password,
}
}
$.ajax(settings).done(function (response) {
aTkn = response.access_token;
});
return aTkn;
Fetch: get a 500 error : {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
fetch("https://api.com/oauth2/token", {
crossDomain:true,
method: 'post',
headers: { "Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken},
body:{
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
}
}).then((data)=>{debugger})
ajax reactjs post fetch
add a comment |
up vote
0
down vote
favorite
I need to make a post call to get a token. I wanted to use fetch but I keep getting a 500 error. (jquery ajax request worked fine, but I am using react and I want to avoid installing jquery just for this). What is the difference here?
AJAX (works fine, I get a token back)
var settings = {
"async": false,
"crossDomain": true,
"url": "https://api.com/oauth2/token",
"method": "POST",
"headers": {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": "postmantoken"
},
"data": {
"client_id": clientId,
"client_secret": clientSecret,
"grant_type": "password",
"username": username,
"password": password,
}
}
$.ajax(settings).done(function (response) {
aTkn = response.access_token;
});
return aTkn;
Fetch: get a 500 error : {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
fetch("https://api.com/oauth2/token", {
crossDomain:true,
method: 'post',
headers: { "Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken},
body:{
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
}
}).then((data)=>{debugger})
ajax reactjs post fetch
What's the error you're getting?
– chrisg86
Nov 21 at 18:48
1
body: JSON.stringify(data)
Using Fetch API
– devserkan
Nov 21 at 18:50
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I need to make a post call to get a token. I wanted to use fetch but I keep getting a 500 error. (jquery ajax request worked fine, but I am using react and I want to avoid installing jquery just for this). What is the difference here?
AJAX (works fine, I get a token back)
var settings = {
"async": false,
"crossDomain": true,
"url": "https://api.com/oauth2/token",
"method": "POST",
"headers": {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": "postmantoken"
},
"data": {
"client_id": clientId,
"client_secret": clientSecret,
"grant_type": "password",
"username": username,
"password": password,
}
}
$.ajax(settings).done(function (response) {
aTkn = response.access_token;
});
return aTkn;
Fetch: get a 500 error : {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
fetch("https://api.com/oauth2/token", {
crossDomain:true,
method: 'post',
headers: { "Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken},
body:{
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
}
}).then((data)=>{debugger})
ajax reactjs post fetch
I need to make a post call to get a token. I wanted to use fetch but I keep getting a 500 error. (jquery ajax request worked fine, but I am using react and I want to avoid installing jquery just for this). What is the difference here?
AJAX (works fine, I get a token back)
var settings = {
"async": false,
"crossDomain": true,
"url": "https://api.com/oauth2/token",
"method": "POST",
"headers": {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": "postmantoken"
},
"data": {
"client_id": clientId,
"client_secret": clientSecret,
"grant_type": "password",
"username": username,
"password": password,
}
}
$.ajax(settings).done(function (response) {
aTkn = response.access_token;
});
return aTkn;
Fetch: get a 500 error : {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
fetch("https://api.com/oauth2/token", {
crossDomain:true,
method: 'post',
headers: { "Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken},
body:{
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
}
}).then((data)=>{debugger})
ajax reactjs post fetch
ajax reactjs post fetch
edited Nov 21 at 22:23
sideshowbarker
30.3k137191
30.3k137191
asked Nov 21 at 18:43


Maria Ramirez
42
42
What's the error you're getting?
– chrisg86
Nov 21 at 18:48
1
body: JSON.stringify(data)
Using Fetch API
– devserkan
Nov 21 at 18:50
add a comment |
What's the error you're getting?
– chrisg86
Nov 21 at 18:48
1
body: JSON.stringify(data)
Using Fetch API
– devserkan
Nov 21 at 18:50
What's the error you're getting?
– chrisg86
Nov 21 at 18:48
What's the error you're getting?
– chrisg86
Nov 21 at 18:48
1
1
body: JSON.stringify(data)
Using Fetch API– devserkan
Nov 21 at 18:50
body: JSON.stringify(data)
Using Fetch API– devserkan
Nov 21 at 18:50
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
The data you are passing to fetch must be stringified, otherwise something like [object Object]
will be passed in:
fetch("https://api.com/oauth2/token", {
crossDomain: true,
method: 'post',
headers: {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken
},
body: JSON.stringify({
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
})
}).then((data) => { debugger })
Hope this helps!
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
It looks likeclientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.
– chrisg86
Nov 21 at 19:23
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
The data you are passing to fetch must be stringified, otherwise something like [object Object]
will be passed in:
fetch("https://api.com/oauth2/token", {
crossDomain: true,
method: 'post',
headers: {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken
},
body: JSON.stringify({
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
})
}).then((data) => { debugger })
Hope this helps!
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
It looks likeclientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.
– chrisg86
Nov 21 at 19:23
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
add a comment |
up vote
0
down vote
The data you are passing to fetch must be stringified, otherwise something like [object Object]
will be passed in:
fetch("https://api.com/oauth2/token", {
crossDomain: true,
method: 'post',
headers: {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken
},
body: JSON.stringify({
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
})
}).then((data) => { debugger })
Hope this helps!
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
It looks likeclientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.
– chrisg86
Nov 21 at 19:23
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
add a comment |
up vote
0
down vote
up vote
0
down vote
The data you are passing to fetch must be stringified, otherwise something like [object Object]
will be passed in:
fetch("https://api.com/oauth2/token", {
crossDomain: true,
method: 'post',
headers: {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken
},
body: JSON.stringify({
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
})
}).then((data) => { debugger })
Hope this helps!
The data you are passing to fetch must be stringified, otherwise something like [object Object]
will be passed in:
fetch("https://api.com/oauth2/token", {
crossDomain: true,
method: 'post',
headers: {
"Accept": "application/json",
"Content-Type": "application/x-www-form-urlencoded",
"cache-control": "no-cache",
"Postman-Token": postmantoken
},
body: JSON.stringify({
"client_id": clientId,
"client_secret": clientSecreet,
"grant_type": "password",
"username": username,
"password": password,
})
}).then((data) => { debugger })
Hope this helps!
answered Nov 21 at 18:50
chrisg86
7,82421023
7,82421023
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
It looks likeclientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.
– chrisg86
Nov 21 at 19:23
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
add a comment |
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
It looks likeclientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.
– chrisg86
Nov 21 at 19:23
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
This is the error I get both with JSON.stringify and without it: {error: "invalid_request", error_description: "Object reference not set to an instance of an object."} error: "invalid_request" error_description: "Object reference not set to an instance of an object."
– Maria Ramirez
Nov 21 at 19:20
It looks like
clientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.– chrisg86
Nov 21 at 19:23
It looks like
clientSecreet
is misspelled. I would suggest to check all variables you're trying to pass in.– chrisg86
Nov 21 at 19:23
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
That was just a place holder to paste the code here, I am sending the request with hard coded values
– Maria Ramirez
Nov 21 at 19:27
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53418648%2fpost-request-works-with-ajax-but-not-with-fetch%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
What's the error you're getting?
– chrisg86
Nov 21 at 18:48
1
body: JSON.stringify(data)
Using Fetch API– devserkan
Nov 21 at 18:50