Я потратил на это два часа своей жизни и подумал, могут ли помочь свежие глаза.
Я пытаюсь связаться с auth0, чтобы получить токен доступа для API управления.
Предоставить пример кода, используя модуль запроса, который работает отлично (я заменил ключ / секретные значения):
var request = require("request");
var options = { method: 'POST',
url: 'https://dev-wedegpdh.auth0.com/oauth/token',
headers: { 'content-type': 'application/json' },
body: '{"client_id":"myID","client_secret":"mySecret","audience":"https://dev-wedegpdh.auth0.com/api/v2/","grant_type":"client_credentials"}' };
request(options, function (error, response, body) {
if (error) throw new Error(error);
res.json(JSON.parse(response.body).access_token)
});
У меня есть мой ID и секрет, сохраненный в файле .env, поэтому я смог приспособиться к этому, что такжеработает нормально:
var options = { method: 'POST',
url: 'https://dev-wedegpdh.auth0.com/oauth/token',
headers: { 'content-type': 'application/json' },
body:
JSON.stringify({
grant_type: 'client_credentials',
client_id: process.env.auth0AppKey,
client_secret: process.env.auth0AppSecret,
audience: 'https://dev-wedegpdh.auth0.com/api/v2/'})
}
request(options, function (error, response, body) {
if (error) throw new Error(error)
res.json(JSON.parse(response.body).access_token)
})
Я пытаюсь сделать точно такой же запрос, используя axios, и я получаю ошибку 404:
let response = await axios.post(
'https://dev-wedegpdh.auth0.com/api/v2/oauth/token',
JSON.stringify({
grant_type: 'client_credentials',
client_id: process.env.auth0AppKey,
client_secret: process.env.auth0AppSecret,
audience: 'https://dev-wedegpdh.auth0.com/api/v2/'
}),
{
headers: {'content-type': 'application/json'},
}
)
Я пробовал несколько различных форматов или конфигураций для функции post, включаянайденные здесь и здесь и т. д.
Кто-нибудь видит, что я делаю неправильно ???