2012-05-22 58 views
0

我想我没有正确地发送API所需的数据。任何想法我做错了什么?无法正确发布数据到Chargify通过PHP cURL

$ch = curl_init("https://test.chargify.com/customers.json"); 

$data = array(
    'first_name' => 'Test', 
    'last_name' => 'User', 
    'email' => '[email protected]' 
); 

$data = json_encode($data); 

curl_setopt_array($ch, array(
    CURLOPT_USERPWD => "yyyyyyyyyyyyyyy:x", // assume this is correct 
    CURLOPT_RETURNTRANSFER => 1, 
    CURLOPT_CUSTOMREQUEST => "POST", 
    CURLOPT_POSTFIELDS => $data, 
    CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json', 
    'Content-Length: ' . strlen($data) 
) 
)); 

$output = curl_exec($ch); 
curl_close($ch); 

它返回

{ 
errors: [ 
     "First name: cannot be blank.", 
     "Last name: cannot be blank.", 
     "Email address: cannot be blank." 
    ] 
} 

下面是该API的文档: http://docs.chargify.com/api-customers

回答

1

试试这个:

$data = array('customer' => array(
    'first_name' => 'Test', 
    'last_name' => 'User', 
    'email' => '[email protected]' 
)); 
+1

新鲜眼中的力量!多谢,伙计。 –