2013-01-08 235 views
0

我试图执行具有下列样品参数创建帐户API贝宝的创建帐户贝宝API

accountType=Premier&addressType.line1=Real+St&addressType.city=San+Jose&addressType.postalCode=92274&addressType.countryCode=US&addressType.state=California&citizenshipCountryCode=US&contactPhoneNumber=123-456-1234&homePhoneNumber=123-456-1234&mobilePhoneNumber=123-456-1234&currencyCode=USD&dateOfBirth=1970-01-01Z&emailAddress=test.test%40gmail.com&nameType.salutation=Miss&nameType.firstName=Malou&nameType.lastName=Perez&nameType.suffix=Sr&preferredLanguageCode=en_US&registrationType=Web&requestEnvelope.errorLanguage=en_US&requestEnvelope.detailLevel=ReturnAll&suppressWelcomeEmail=1&createAccountWebOptionsType.useMiniBrowser=0&createAccountWebOptionsType.returnUrl=http%3A%2F%2Fwww.testurlonly.com&createAccountWebOptionsType.reminderEmailFrequency=NONE&createAccountWebOptionsType.confirmEmail=0 

使其更清晰,参数放入数组时具有以下值:

$parameters = array(
     'accountType'          => 'Premier', 
     'addressType.line1'         => 'Real St', 
     'addressType.city'         => 'San Jose', 
     'addressType.postalCode'        => '92274', 
     'addressType.countryCode'       => 'US', 
     'addressType.state'         => 'California', 
     'citizenshipCountryCode'        => 'US', 
     'contactPhoneNumber'         => '123-456-1234', 
     'homePhoneNumber'         => '123-456-1234', 
     'mobilePhoneNumber'         => '123-456-1234', 
     'currencyCode'          => 'USD', 
     'dateOfBirth'          => '1970-01-01Z', 
     'emailAddress'          => 'test.[email protected]', 
     'nameType.salutation'        => 'Miss', 
     'nameType.firstName'         => 'Malou', 
     'nameType.lastName'         => 'Perez', 
     'nameType.suffix'         => 'Sr', 
     'preferredLanguageCode'        => 'en_US', 
     'registrationType'         => 'Web', 
     'requestEnvelope.errorLanguage'      => 'en_US', 
     'requestEnvelope.detailLevel'      => 'ReturnAll', 
     'suppressWelcomeEmail'        => true, 
     'createAccountWebOptionsType.useMiniBrowser'   => false, 
     'createAccountWebOptionsType.returnUrl'    => 'http://www.testurlonly.com', 
     'createAccountWebOptionsType.reminderEmailFrequency' => 'NONE', 
     'createAccountWebOptionsType.confirmEmail'   => false 
    ); 

这里是AdaptiveAccounts /的createAccount API响应(三onverted数组):

array(18) { 
    ["responseEnvelope.timestamp"]=> 
     string(29) "2013-01-07T21:33:01.984-08:00" 
     ["responseEnvelope.ack"]=> 
     string(7) "Failure" 
     ["responseEnvelope.correlationId"]=> 
     string(13) "ae7c9d245cabf" 
     ["responseEnvelope.build"]=> 
     string(7) "4055066" 
     ["error(0).errorId"]=> 
     string(6) "580029" 
     ["error(0).domain"]=> 
     string(8) "PLATFORM" 
     ["error(0).subdomain"]=> 
     string(11) "Application" 
     ["error(0).severity"]=> 
     string(5) "Error" 
     ["error(0).category"]=> 
     string(11) "Application" 
     ["error(0).message"]=> 
     string(40) "Missing required request parameter: name" 
     ["error(0).parameter(0)"]=> 
     string(4) "name" 
     ["error(1).errorId"]=> 
     string(6) "580029" 
     ["error(1).domain"]=> 
     string(8) "PLATFORM" 
     ["error(1).subdomain"]=> 
     string(11) "Application" 
     ["error(1).severity"]=> 
     string(5) "Error" 
     ["error(1).category"]=> 
     string(11) "Application" 
     ["error(1).message"]=> 
     string(43) "Missing required request parameter: address" 
     ["error(1).parameter(0)"]=> 
     string(7) "address" 
    } 

为什么它说:“缺少必要的请求参数:地址”请赐教“缺少必要的请求参数:名称为”

我想addressType.line1=Real+St&addressType.city=San+Jose&addressType.postalCode=92274&addressType.countryCode=US&addressType.state=California

地址

nameType.salutation=Miss&nameType.firstName=Malou&nameType.lastName=Perez&nameType.suffix=Sr

谢谢。

回答

0

,而不是NAMETYPE,使用的名字。因此,我们有

name.firstName, name.lastName, name.salutation and name.suffix 

和我删除name.salutation,因为我没有什么该字段的正确的价值观是什么想法。

对于addressType。,我用adress替换它。而且,address.state必须有状态码而不是状态名称。

我还发现paypal返回580022对于格式和值不正确的字段,请求参数无效。我们不能为不存在的邮政编码,城市和州的虚拟数据。