[英]415 Unsupported Media Type error - Domo Connector
因此,我正在使用Domo开发人员工具(他们喜欢将其称为IDE)构建连接器,但似乎无法使身份验证文件与它们的库一起工作。
Domo使用httprequest
库进行基本和oauth类型的身份验证。
我在通过Domo找回令牌时遇到了麻烦,但是我可以轻松地通过curl
或使用Postman api工具来完成令牌。
这是下面的代码:
var client_id = '4969e1ea-71b9-3267-ae7d-4ce0ac6bfa28';
var client_secret = '*****************************';
var user = '*********';
var pass = '*********';
var postData =
{
data: {
'grant_type': 'password',
'username': user,
'password': pass,
'client_id': client_id,
'client_secret': client_secret,
'scope': 'internal'
}
};
var res = httprequest.post('https://rest.synthesio.com/security/v1/oauth/token', postData);
DOMO.log('res: ' + res);
请让我知道您是否有其他解决方法。 我试图将标题添加到postData
对象本身中,以及删除data
变量,也将属性保留为原样。
当您将postData作为这样的对象传递时,DOMO将通过JSON.stringify运行它并将结果发送到请求正文中。
您可以手动对请求正文进行编码,也可以使用其httprequest.addParameter函数添加它们。 尝试这样的事情:
var client_id = '4969e1ea-71b9-3267-ae7d-4ce0ac6bfa28';
var client_secret = '*****************************';
var user = '*********';
var pass = '*********';
httprequest.addParameter('grant_type', 'password');
httprequest.addParameter('username', user);
httprequest.addParameter('password', pass);
httprequest.addParameter('client_id', client_id);
httprequest.addParameter('client_secret', client_secret);
httprequest.addParameter('scope', 'internal');
var res = httprequest.post('https://rest.synthesio.com/security/v1/oauth/token');
DOMO.log('res: ' + res);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.