2012-11-19 84 views
1

我一直在試圖使用該鏈接的格式通過REST API客戶信息更新的領域:Magento的REST API更新

http://<magentohost>/api/rest/customers 

但要我得到一個客戶的電子郵件已經存在

如何更新通過REST API的信息..

示例代碼:

 $productData = json_encode(array(
      'id'  => 1, 
      'firstname' => 'Ted', 
      'lastname' => 'Mosbius', 
      'website_id'=> 1, 
      'group_id'  => 1, 
      'email'   => '[email protected]' 
     )); 
     $headers = array('Content-Type' => 'application/json'); 
     $oauthClient->fetch($resourceUrl, $productData, OAUTH_HTTP_METHOD_POST, $headers); 
     // $oauthClient->fetch($resourceUrl); 
     $productsList = json_decode($oauthClient->getLastResponse()); 
     print_r($productsList); 

在這段代碼,電子郵件存在,ID存在,website_id存在和GROUP_ID存在......我只是想更新提前名字和姓氏

感謝

+0

我問,因爲不幸的是,我還沒有發現任何文件或指導這樣做... –

回答

1

就發現了這個問題,我需要使用PUT,而不是POST從這個鏈接(http://ajaxpatterns.org/RESTful_Service)更新是根據當...

$productData = json_encode(array(
    'id'  => 1, 
    'firstname' => 'Ted', 
    'lastname' => 'Mosbius', 
)); 
$headers = array('Content-Type' => 'application/json'); 
$oauthClient->fetch($resourceUrl, $productData, OAUTH_HTTP_METHOD_PUT, $headers); 
$productsList = json_decode($oauthClient->getLastResponse()); 
print_r($productsList); 

希望這將幫助別人的未來... :)

+0

得到$產品列表後如何獲得產品的其他細節,如類別,名稱,製造等。 –

0

錯誤就拿出少形成的頭是這樣的:

$headers = array('Content-Type' => 'application/json', 'Accept' => '*/*');