2014-07-16 49 views
0

我的代碼是在Codeigniter中使用Restful api。Yodlee addSiteAccount1返回com.yodlee.core.IncompleteArgumentException

$cobSessionToken=cobloginss(); 
    $userSession_Token=getUserToken(); 

    $response  = array(); 

    $config = array(
     "url" => "https://rest.developer.yodlee.com/services/srest/restserver/v1.0/jsonsdk/SiteAccountManagement/addSiteAccount1", 
     "parameters" => array(
     "cobSessionToken" => $cobSessionToken, 
     "userSessionToken" => $userSession_Token, 
     "siteId" => $_POST['siteId'], 
     "credentialFields.enclosedType" => 'com.yodlee.common.FieldInfoSingle', 
     "credentialFields[0].displayName" => $_POST['credentialFields1_displayName'], 
     "credentialFields[0].typeName" => $_POST['credentialFields1_fieldType_typeName'], 
     "credentialFields[0].name" => $_POST['credentialFields1_name'], 
     "credentialFields[0].value" => $_POST['credentialFields'][0], 
     "credentialFields[0].valueIdentifier" => $_POST['credentialFields1_valueIdentifier'], 
     "credentialFields[0].valueMask" => $_POST['credentialFields1_valueMask'], 
     "credentialFields[0].isEditable" => $_POST['credentialFields1_isEditable'], 

     "credentialFields[0].helpText" => $_POST['credentialFields1_helpText'], 
     "credentialFields[0].maxlength" => $_POST['credentialFields1_maxlength'], 
     "credentialFields[0].size" => $_POST['credentialFields1_size'], 

     "credentialFields[1].displayName" => $_POST['credentialFields2_displayName'], 
     "credentialFields[1].typeName" => $_POST['credentialFields2_fieldType_typeName'], 
     "credentialFields[1].name" => $_POST['credentialFields2_name'], 
     "credentialFields[1].value" => $_POST['credentialFields'][1], 
     "credentialFields[1].valueIdentifier" => $_POST['credentialFields2_valueIdentifier'], 
     "credentialFields[1].valueMask" => $_POST['credentialFields2_valueMask'], 
     "credentialFields[1].isEditable" => $_POST['credentialFields2_isEditable'], 

     "credentialFields[1].helpText" => $_POST['credentialFields2_helpText'], 
     "credentialFields[1].maxlength" => $_POST['credentialFields2_maxlength'], 
     "credentialFields[1].size" => $_POST['credentialFields2_size'] 
    ) 
    ); 

這看起來像如下當我做的print_r($配置)

Array 
(
    [url] => https://rest.developer.yodlee.com/services/srest/restserver/v1.0/jsonsdk/SiteAccountManagement/addSiteAccount1 
    [parameters] => Array 
     (
      [cobSessionToken] => 08062013_0:52e7099efa26aa3393dacc1d237ad3b53609041d8f82188491fb9c70764e20e05c63e3e7e1850dfc7913bbf54a5c7880f14531fc71e234d24200a51812b992e0 
      [userSessionToken] => 08062013_0:0588a3039977888a5d3f49a741b43b0d3e9aa9325b8daa444de6f31f3008f1481d9faa0a301d75173f42a6c84d824cd9467ec8634f45ae60f987c7d2c28fb8f7 
      [siteId] => 3345 
      [credentialFields.enclosedType] => com.yodlee.common.FieldInfoSingle 
      [credentialFields[0].displayName] => User ID 
      [credentialFields[0].typeName] => IF_LOGIN 
      [credentialFields[0].name] => LOGIN 
      [credentialFields[0].value] => dustingyoder 
      [credentialFields[0].valueIdentifier] => LOGIN 
      [credentialFields[0].valueMask] => LOGIN_FIELD 
      [credentialFields[0].isEditable] => true 
      [credentialFields[0].helpText] => 53224 
      [credentialFields[0].maxlength] => 40 
      [credentialFields[0].size] => 20 
      [credentialFields[1].displayName] => Password 
      [credentialFields[1].typeName] => IF_PASSWORD 
      [credentialFields[1].name] => PASSWORD 
      [credentialFields[1].value] => Dus08Yod1985 
      [credentialFields[1].valueIdentifier] => PASSWORD 
      [credentialFields[1].valueMask] => LOGIN_FIELD 
      [credentialFields[1].isEditable] => true 
      [credentialFields[1].helpText] => 53223 
      [credentialFields[1].maxlength] => 40 
      [credentialFields[1].size] => 20 
     ) 

) 

,最終響應

Array 
(
    [Body] => stdClass Object 
     (
      [errorOccurred] => true 
      [exceptionType] => com.yodlee.core.IncompleteArgumentException 
      [referenceCode] => _08ddcbd6-7d93-4365-9ee0-e3555ca181f9 
      [message] => Incomplete argument: FieldInfoSingle: {FieldInfo: name="null" displayName="null" editable=false optional=false helpText="null" valuePattern="null" } defaultValue="null" value="null" validValues=[null] displayValidValues=[null] valueIdentifier="PASSWORD" valueMask="LOGIN_FIELD" fieldType="null" validationRules=[null] size=null maxlength=null userProfileMappingExpression=null fieldErrorCode=null fieldErrorMessage=null 
     ) 

) 

任何人都可以請讓我知道我做了錯誤是

回答

0

這只是參數失蹤的服務,我發現這些參數在螢火蟲控制檯謝謝f或螢火蟲..總共32個參數需要傳遞我只傳遞了24個參數,所以通過將剩餘的參數(參數)傳遞給Web服務來解決問題

0

我們建議您傳遞所有必須的參數,根據使用情況可以選擇。

很好,你已經確定了根本原因。