WooCommerce - 使用API​​创建客户

时间:2017-07-02 02:19:52

标签: wordpress api ionic-framework woocommerce

我想为我的WooCommerce商店(在我的外部应用程序中)创建一个注册页面。不幸的是,每当我调用API来创建客户时,它都会说它缺少密码参数。

完全有道理,但WooCommerce API文档不会告诉我如何传递用户在注册页面上选择的密码:http://woocommerce.github.io/woocommerce-rest-api-docs/#create-a-customer

我如何更改代码才能使其正常工作?

this.WooCommerce = WC({


        url: "https://.......mystagingwebsite.com/",
        consumerKey: 'ck_....', // Production
        consumerSecret: 'cs_....', // Production
        wpAPI: true,
        version: 'wc/v2'

    });

    var data = {
      email: 'john.doe@example.com',
      first_name: 'John',
      last_name: 'Doe',
      username: 'john.doe',
      billing: {
        first_name: 'John',
        last_name: 'Doe',
        company: '',
        address_1: '969 Market',
        address_2: '',
        city: 'San Francisco',
        state: 'CA',
        postcode: '94103',
        country: 'US',
        email: 'john.doe@example.com',
        phone: '(555) 555-5555'
      },
      shipping: {
        first_name: 'John',
        last_name: 'Doe',
        company: '',
        address_1: '969 Market',
        address_2: '',
        city: 'San Francisco',
        state: 'CA',
        postcode: '94103',
        country: 'US'
      }
    };


    this.WooCommerce.post('customers', data, function(err, data, res) {

          console.log(res);

    });

1 个答案:

答案 0 :(得分:0)

您可以通过执行curl命令来获取REST架构:

curl -X OPTIONS http://me.local.com/wp-json/wc/v2/customers

不幸的是,这会提供原始JSON,因此最好先将其放入文件中。

curl -X OPTIONS http://me.local.com/wp-json/wc/v2/customers > curl.out

可以使用PHP命令解码:

php -r "print_r( json_decode( file_get_contents( 'curl.out' ) ) );" > php.out

您希望使用方法“POST”查找端点以创建REST请求。

或者,您只需在以下位置阅读REST控制器源代码:

...\wp-content\plugins\woocommerce\includes\api

在任何一种情况下,这都会比任何文档更准确,因为它反映了当前的实现。

如果你这样做,你会发现一个参数'password',它具有'required'=>属性。 1这就是你的请求失败的原因。因此,我会在“用户名”和“结算”之间插入“密码”参数。