2016-07-14 11 views
0

私はDomo開発ツール(IDEと呼ぶのが好きです)を使用してコネクタを構築しています。415サポートされていないメディアタイプのエラー - Domo Connector

Domoは基本とoauthタイプの認証にhttprequestライブラリを使用します。

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); 
関連する問題