0

我的目的是使用现有的应用程序详细信息(例如 AMAZON_CLIENT_ID、AMAZON_CLIENT_SECRET 和访问令牌)将广告报告下载到其他 Java 应用程序。

我能够使用 AMAZON_CLIENT_ID、AMAZON_CLIENT_SECRET 和 refresh_token 获得新的访问令牌。下面是获取新访问令牌的代码。

OkHttpClient client = new OkHttpClient();
 Response response;
            MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
     RequestBody body = RequestBody.create(mediaType, "grant_type=refresh_token&refresh_token=" + refreshToken + "&client_id=" + amzClientId + "&client_secret=" + amzClientSceret);
            Request request = new Request.Builder()
                    .url(“https://api.amazon.com/auth/o2/token”)
                    .post(body)
                    .addHeader("content-type", "application/x-www-form-urlencoded")
                    .build();
        response = client.newCall(request).execute();

发送 api 请求以获取活动级别统计数据后,出现以下错误

{"code":"UNAUTHORIZED","
details":"Not authorized to access scope XXXXXXXXXXXXXXXXXX","
requestId":"xxxxxxxxxxxxx"}" 

我的问题是,我可以使用相同的现有 AMAZON_CLIENT_ID、AMAZON_CLIENT_SECRET 和访问令牌来获取不同 Java 应用程序的统计信息(不使用亚马逊登录)吗?

任何帮助,将不胜感激。谢谢!!

4

1 回答 1

1

您需要为后续请求包括访问令牌和客户端 ID。

.addHeader("授权", "承载" + access_token)

.addHeader("Amazon-Advertising-API-ClientId", client_id)

于 2021-10-20T00:09:22.190 回答