2016-12-21 11 views
1

Implicit Grant oauth2呼び出しからアクセストークン(response_type = token)を受け取った後、DocuSign APIからuserinfoを取得しようとしています。Oauth2 DocuSign APIからのユーザー情報の取得Implicit Grant

私のコードは次のようになります。

request = $.ajax({ 
    type: 'GET', 
    xhrFields: {withCredentials: true}, 
    beforeSend: function(xhr) { 
     xhr.setRequestHeader('Authorization', DSaccesstoken); 
     }, 
    url: DSuserurl 
    }); 

request.done (function (response, textStatus, jqXHR) { 
alert(response); 
} 

request.fail(function (jqXHR, textStatus, errorThrown){ 
    alert("Error retrieving DocuSign User Account Information: " + textStatus + " " + errorThrown + ". "); 
    }); 

}); 

いくつかのポイントを... DSaccesstoken「をDocuSignのから受信したベアラアクセストークン」を含む変数です。コードは正常に実行されますが、jsonを含むと仮定すると、応答データはhtmlのように見えます。私もdatatype: 'json'を試しましたが、それもうまくいきません。私もbeforeSendの代わりにheaders: {'Authorization': DSaccesstoken}で試しましたが、どちらもうまくいきませんでした。

ヘッダーがDocuSignに正しく渡されていないと想定していますが、100%確実ではありません。誰かが私が間違っていることを知っていますか?参考までに、PhoneGap Buildサービスを使用してモバイルアプリを作成しています。

+0

詳細情報を提供する必要があります。ユーザーが正しく認証されたかどうかは不明です。彼はログインするように頼んでいますか? –

+0

詳細情報: – salemanager

+0

詳細情報:明らかに私のコードがAuthorizationヘッダーを正しく渡しています。私のDocuSignサンドボックスとインテグレータキーは、 "This is a Mobile App"と定義されています。私のリターンuriはhttp:// localhost/callbackです。問題はDocuSignが次のエラーを投げていることです:{"errorCode": "RESOURCE_NOT_FOUND"、 "message": "提供されたURLはリソースに解決されません"}暗黙的なoauthを使用してuserinfoを取得しようとしたときに、 – salemanager

答えて

0

2つのこと:

  1. ヘッダは{ 'ベアラ' + DSaccesstoken '許可'}であるべきです。
  2. DocuSign Rest APIは、クライアントサイドからはCORSの制限に向けては許可されていません。ブラウザーのような側から呼び出す場合は、プロキシー・サーバーを設定することを考慮する(たとえば、ノードを使用する)場合があります。そのプロキシサーバーはajax呼び出しを受け取り、それらをDocuSign APIにリダイレクトします。 DocuSign official NPM packageを使用できます。
関連する問題