适用于移动应用程序的WooCommerce API [英] WooCommerce API for mobile App
问题描述
我正计划为WooCommerce商店开发本机移动Android应用.
i am planning to develop a native mobile Android App for WooCommerce shops.
我在这里查看了他们的REST API文档: http://docs.woocommercev2.apiary.io/ 我已经开始测试它了,但是当我打不同的电话时
I had a look at their REST API documentation here: http://docs.woocommercev2.apiary.io/ I already started to test it but when i do different calls
GET /orders
假设它返回了商店的所有订单.
GET /orders
let's say it returns all the orders of the shop.
有人知道如何使用他们的API开发最终用户应用吗?
Does anyone have any idea how can i develop a enduser app using their API.
例如:
GET /products
PUT /order
(为已登录的用户创建订单)
PUT /order
(create a order for the logged in User)
GET /order
(获取已登录用户的订单)
GET /order
(get orders of the logged in User)
任何想法都很感激:)
先谢谢了.
推荐答案
对于http
(而不是诸如https
之类的ssl协议)请求,必须使用 OAthu 1.0a 身份验证框架.
Java中有许多用于 oauth 1.0a 的库,
我使用的是 scribeJava
For http
(and not ssl protocol such as https
) request, you must use from OAthu 1.0a authenticate framework.
There are many libraries for oauth 1.0a in java,
i'm use from scribeJava
因此,请执行以下步骤:
So, do the following steps:
-
在依赖范围中的
app/build.gradle
中添加以下内容:
In
app/build.gradle
in dependency scop add this:
compile 'org.scribe:scribe:1.3.5'
OAuth服务提供者的新类为 WoocommerceApi .
重要的.您必须使用
DefaultApi10a中的public
类,用于实现oauth提供程序
New class as WoocommerceApi for provider of OAuth service.
important. You must use a
public
class in DefaultApi10a for implementing oauth provider
public static class WooCommerceApi extends org.scribe.builder.api.DefaultApi10a {
@Override
public org.scribe.model.Verb getRequestTokenVerb()
{
return org.scribe.model.Verb.POST;
}
@Override
public String getRequestTokenEndpoint() {
return "http://www.your-domain.com/wc-auth/authorize";
}
@Override
public String getAccessTokenEndpoint() {
return "none";
}
@Override
public String getAuthorizationUrl(org.scribe.model.Token requestToken) {
return "none";
}
}
您必须在Thread
或AsyncTask
And you Must make request in Thread
or AsyncTask
String restURL = "http://www.your-domain.com/wp-json/wc/v1/products/";
OAuthService service = new ServiceBuilder()
.provider(WooCommerceApi.class)
.apiKey(CONSUMER_KEY) //Your Consumer key
.apiSecret(CONSUMER_SECRET) //Your Consumer secret
.scope("API.Public") //fixed
.signatureType(SignatureType.QueryString)
.build();
OAuthRequest request = new OAuthRequest(Verb.GET, restURL);
// for POST requests
// OAuthRequest request = new OAuthRequest(Verb.POST, restURL);
// request.addBodyParameter(YOUR_PARAM_KEY, YOUR_VALUE);
// or
// request.addPayload(YOUR_JSON);
Token accessToken = new Token("", ""); //not required for context.io
service.signRequest(accessToken, request);
Response response = request.send();
Log.d("OAuthTask",response.getBody());
这篇关于适用于移动应用程序的WooCommerce API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!