用于移动应用程序的 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 协议)请求,必须使用 from 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:
编译'org.scribe:scribe:1.3.5'
作为 WoocommerceApi 的新类,用于 OAuth 服务 的提供者.重要的.您必须使用public
DefaultApi10a 中用于实现 oauth provider 的类
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
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屋!