Javascript 如何使用fetch获取令牌API

Javascript 如何使用fetch获取令牌API,javascript,node.js,api,fetch,Javascript,Node.js,Api,Fetch,我必须从一个“ile de France mobilité”API的url获取令牌,我正在使用Fetch,我不知道如何做到这一点。这是我的实际代码: var client_id = "(my client_id)"; var client_secret = "(my client_secret)"; // var url_get = "https://traffic.api.iledefrance-mobilites.fr

我必须从一个“ile de France mobilité”API的url获取令牌,我正在使用Fetch,我不知道如何做到这一点。这是我的实际代码:

    var client_id = "(my client_id)";
    var client_secret = "(my client_secret)";
    // var url_get = "https://traffic.api.iledefrance-mobilites.fr/v1/tr-global/estimated-timetable";
    var grant_type = 'client_credentials'
    var token_url = 'https://as.api.iledefrance-mobilites.fr/api/oauth/token'
    var scope = 'read-data'

    const options = {
        method: 'POST',
        headers: {
            'Content-Type' : 'application/x-www-form-urlencoded',   
        },
        body: {
            grant_type: grant_type,
            client_id: client_id,
            client_secret: client_secret,
            scope: scope
        }
    }
    const fetch_response = await fetch(token_url, options)
    const json = await fetch_response
    console.log(json)
    response.json(json)
我有答案

“其他斯图夫和:”

  [Symbol(Response internals)]: {
    url: 'https://as.api.iledefrance-mobilites.fr/api/oauth/token',
    status: 401,
    statusText: 'Unauthorized',
    headers: Headers { [Symbol(map)]: [Object: null prototype] },
    counter: 0
  }
}
有人知道怎么做吗

在my index.html中,我将此脚本称为:

async function asyncCall() {
    const api_url = `/trajet`
    const response = await fetch(api_url, {method: 'POST'})
    const json = await response
    //console.log(json)
}

asyncCall()
服务器:

const app = express()
app.listen(3000, () => console.log('listening at 3000'))
app.use(express.static('public'))
app.use(express.json())
app.use(bodyParser.json())

HTTP状态代码401 Unauthorized表示您的请求缺少有效的身份验证凭据。所以你的身体一定有问题

尝试以以下格式发送正文:

body: 'grant_type=client_credentials&client_id=' + key + '&client_secret=' + secret,

我的路线是:
app.post('/trajet',async(request,response)=>
,我的路线是不相关的,因为你的代码从不访问该路线-你在浏览器中发布的代码是吗?这会非常奇怪(而且不安全)如果是这样的话,无论如何
const json=await fetch\u response
应该是
const json=await fetch\u response.json()
作为开始,不要在评论中发布代码-我想你误解了
fetch
response…如果
response=await fetch
那么这不是承诺…你需要使用像.text()这样的方法之一或.json()等来访问响应data@JaromandaX那么,我如何向您展示我的代码呢?谢谢它的有效性谢谢各位,我有一个问题,我该如何回答您呢?非常欢迎。只需单击“✓ " 灰色符号,接受它作为答案。