Rest 使用方法auth Yodlee API
我不熟悉使用这个Yodlee工具,我创建了我的开发者帐户,我想使用沙盒API。 我无法通过rest使用Talend Api,甚至无法使用“auth”()的初始方法来获取令牌;我将按照指定在头中传递loginName、Api版本:1.1和内容类型,然后在正文中传递clientId和secret。 它返回的错误消息是:Rest 使用方法auth Yodlee API,rest,yodlee,Rest,Yodlee,我不熟悉使用这个Yodlee工具,我创建了我的开发者帐户,我想使用沙盒API。 我无法通过rest使用Talend Api,甚至无法使用“auth”()的初始方法来获取令牌;我将按照指定在头中传递loginName、Api版本:1.1和内容类型,然后在正文中传递clientId和secret。 它返回的错误消息是: { "errorCode": "Y303", "errorMessage": "clientId or secr
{
"errorCode": "Y303",
"errorMessage": "clientId or secret is missing",
"referenceCode": "rrt-8413800343306027303-c-gce-12663 ....."
}
也许沙盒帐户不允许我这样做,或者我忘记了什么吗?我也遇到了同样的问题。我正在使用RestSharp 最后发现这是一个不匹配的内容类型
它在添加标题后工作:
内容类型:application/x-www-form-urlencoded
对于任何有谷歌应用程序脚本问题的人,我就是这样做的:
/************************************************************************************
*
* This function starts the app, replace variables as necessary
*
************************************************************************************/
function primaryFunction() {
// Declare variables
var yodleeToken = {};
var loginName = "ENTER_LOGIN_NAME";
var clientID = "ENTER_CLIENT-ID";
var clientSecret = "ENTER_CLIENT_SECRET";
var yodleeURL = "https://sandbox.api.yodlee.com/ysl/";
// Generate user token
yodleeToken = getUserToken(loginName, clientID, clientSecret, yodleeURL);
}
/************************************************************************************
*
* Creating function to get user token
*
* @params loginName {String} Login name provided by Yodlee API
* @params clientID {String} Client ID provided by Yodlee API
* @params clientSecret {String} Client Secret provided by Yodlee API
* @params yodleeURL {String} Yodlee API Endpoint
*
* References
* https://av.developer.yodlee.com/
*
************************************************************************************/
function getUserToken(loginName, clientID, clientSecret, yodleeURL) {
// Specify headers
var headers = {
'Api-Version': '1.1',
'Content-Type': 'application/x-www-form-urlencoded',
'loginName': encodeURIComponent(loginName)
};
// Build params
var parameters = {
'method': 'POST',
'headers': headers,
'payload': encodeURI("clientId=" + clientID + "&secret=" + clientSecret),
'redirect': 'follow',
'timeout': 0,
// 'muteHttpExceptions': true,
};
// Call API with params
var response = UrlFetchApp.fetch(yodleeURL + "auth/token", parameters);
var responseJSON = JSON.parse(response);
// return JSON response with Link Token
return responseJSON;
}