2016-07-14 74 views
0

因此,我使用Domo開發人員工具(他們喜歡稱之爲IDE)構建連接器,我似乎無法獲取身份驗證片與其庫一起工作。415不受支持的媒體類型錯誤 - Domo連接器

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); 

Pleae讓我知道,如果你有這接近一個不同的方式。我試圖在postData對象本身中添加標題,並刪除data變量,並保留屬性原樣。

回答

1

當您將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); 
相關問題