使用Woocommerce REST API在POST方法中出现问题

时间:2016-08-08 06:57:28

标签: android rest oauth okhttp3 woocommerce-rest-api

我正在使用Woocommerce REST API开发一个Android应用程序。 我可以使用GET方法通过这个REST api访问数据,

现在我在使用这个REST API创建新客户时遇到了问题。

此处 POST 方法无效。

我的 END_POINT "http:example.com/wp-json/wc/v1/customers"

问题是身份验证错误

我正在使用OkHttp进行网络通话。

这是我的代码:

protected String doInBackground(Void... params) {
        try {
            MediaType JSON = MediaType.parse("application/json; charset=utf-8");
            String authHeader = Credentials.basic(Config.CONSUMER_KEY, Config.CONSUMER_SECRET);
            Log.e(TAG, "doInBackground: auth -> " + authHeader);
            RequestBody body = RequestBody.create(JSON, json);

            Request request = new Request.Builder()
                    .url(url)
                    .post(body)
                    .addHeader("Content-Type", "application/json; charset=utf-8")
                    .addHeader("Accept", "application/json")
                    .addHeader("Authorization", authHeader)
                    .build();

            OkHttpOAuthConsumer consumer = new OkHttpOAuthConsumer(Config.CONSUMER_KEY, Config.CONSUMER_SECRET);

            OkHttpClient client = new OkHttpClient.Builder()
                    .addInterceptor(new SigningInterceptor(consumer))
                    .build();

            Response response = client.newCall(request).execute();

            return response.message();
        } catch (IOException e) {
            e.printStackTrace();
            Log.e(TAG, "doInBackground: " + e.getLocalizedMessage());
            return Tag.IO_EXCEPTION;
        }
    }

回复信息是:

{"code":"woocommerce_rest_cannot_create","message":"Sorry, you are not allowed to create resources.","data":{"status":401}}

我不知道问题出在哪里。

如果有人遇到此问题,请表示请分享您的解决方案。

提前致谢。

0 个答案:

没有答案