【发布时间】:2018-02-19 12:53:12
【问题描述】:
我尝试通过一些参数从 API 获取产品。我用WooCommerce API Java Wrapper。带有 OAuth 1.0 的 REST API。简单的 getAll 方法返回一页(10 个产品)的列表。要获得所有信息,我必须设置一页中必须有多少产品并使用偏移量。要获取第三页必须发送此参数:“per_page=10&offset=20”。我在 get&post 程序中使用查询进行测试 - 一切正常。在 Java 中,当我添加参数时 - 我收到错误 (401) - “无效签名 - 提供的签名不匹配”。 我更改了 WooCommerceAPI 类:
private static final String API_URL_FORMAT = "%s/wp-json/wc/v2/%s";
private static final String API_URL_ONE_ENTITY_FORMAT = "%s/wp-json/wc/v2/%s/%d";
private HttpClient client;
private OAuthConfig config;
public List getAll(String endpointBase) {
String url = String.format(API_URL_FORMAT, config.getUrl(), endpointBase) + "?per_page=10&offset=20";
String signature = OAuthSignature.getAsQueryString(config, url, HttpMethod.GET);
String securedUrl = String.format("%s&%s", url, signature);
System.out.println("url="+url);
System.out.println("securedUrl="+securedUrl);
return client.getAll(securedUrl);
}
但我遇到了同样的错误。
【问题讨论】:
标签: java api woocommerce get