我正在尝试使用NodeJS中的Axios编写Post方法。
我要在post方法中将以下内容作为参数传递
url = http:/xyz/oauthToken
header 'authorization: Basic kdbvkjhdkhdskhjkjkv='\
header 'cache-control:no-cache'
header 'content-type: application/x-www-form-urlencoded'
data 'grant_type=password&username=user123&password=password123'
当我尝试使用以下代码但对于Axioz还是陌生的时,我不确定如何准确地使用主体响应的授予类型来实现标头。
var config = {
headers: {'Authorization': "bearer " + token}
};
var bodyParameters = {
data 'grant_type=password&username=user123&password=password123'
}
Axios.post(
'http:/xyz/oauthToken',
bodyParameters,
config
).then((response) => {
console.log(response)
}).catch((error) => {
console.log(error)
});
任何帮助/建议将不胜感激:-)
答案 0 :(得分:2)
当前,axios并不方便使用表单编码的数据。它主要针对JSON进行了优化。不过,as documented here是可能的。
const querystring = require('querystring');
const body = querystring.stringify({
grant_type: 'password',
username: 'user123',
password: 'password123'
});
axios.post('http:/xyz/oauthToken', body, {
headers: {
authorization: `bearer ${token}`,
'content-type': 'application/x-www-form-urlencoded'
}
});