axios 对于带有表单数据的 post 请求返回 404

Vin*_*wda 5 httprequest node.js express azure-active-directory axios

我正在尝试通过 Axios 通过具有表单数据的发布请求从 Azure AD 获取图形令牌。响应抛出错误Request failed ,状态代码 404。下面是代码,

const axios = require('axios')
const FormData = require('form-data')
    
const bodyFormData = new FormData()
    
bodyFormData.append('client_id', <client id>)
bodyFormData.append('client_secret', <secret>)
bodyFormData.append('scope', <scope>)
bodyFormData.append('requested_token_use', <token use>)
bodyFormData.append('assertion', <token>)
    
axios
.post('https://login.microsoftonline.com/<tenantId>/oauth2/v2.0/token', bodyFormData, {
headers: bodyFormData.getHeaders(),
})
.then((response) => {
console.log('AXIOS RESPONSE ', response)
})
.catch((err) => {
console.log('AXIOS ERROR ', err)
})
Run Code Online (Sandbox Code Playgroud)

邮寄请求在邮递员中工作正常。如果从 Axios 请求中删除bodyFormData,Axios 中的响应也符合预期。当bodyFormData添加到请求时,我遇到错误。

AXIOS ERROR 错误:请求失败,状态代码 404

Mat*_*ulo 0

尝试删除标题部分,它应该可以工作。

\n

没有任何理由必须从 FormData 对象获取标头,因为它\xe2\x80\x99 是一个 API,并且将使用其他形式的身份验证,并且可能会搞乱调用。

\n

它\xe2\x80\x99 不是可能被某些安全措施阻止的数据抓取调用。

\n