Thursday, 20 September 2018

Issue while accessing WooCommerce Rest API from OkHttp based app

I want to build an android client that can interact with the WooCommerce based site using the Rest Api provided by WooCommerce

This is my android code. I am using OkHttp library for networking.

public class MainActivity extends AppCompatActivity {
    OkHttpClient client;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String cred = Credentials.basic("ck_...","cs_...");

        OkHttpClient client = new OkHttpClient
                                    .Builder()
                                    .build();
        Request req = new Request
                            .Builder()
                .addHeader("Authorization",cred)

                .url("http://10.0.2.2:8080/woocom/wp-json/wc/v2/products")
                            .build();
        client.newCall(req).enqueue(new Callback() {
            @Override
            public void onFailure(Call call, IOException e) {
                Log.d("api resp", "onFailure: ");
                e.printStackTrace();
            }

            @Override
            public void onResponse(Call call, Response response) throws IOException {
                Log.d("Api resp", "onResponse: "+response.body().string());
            }
        });
    }
}

This is the error log after running the app

com.example.android.woocommerceapiintegration D/Api resp: onResponse: {"code":"woocommerce_rest_cannot_view","message":"Sorry, you cannot list resources.","data":{"status":401}}

What am I doing wrong here. I tried out the NodeJS client provided by WooCommerce which works fine.

Also I cannot access the rest api via curl according to the command given in the docs

Can someone tell me what I am doing wrong ?



from Issue while accessing WooCommerce Rest API from OkHttp based app

No comments:

Post a Comment