Google Analytics Java API过滤器更新错误

时间:2014-12-12 07:00:46

标签: java google-analytics-api

我正在使用Google Analytics Management API进行过滤器更新。我一直在尝试使用此method来更新我的过滤器,但显然它不起作用。

以下是我的更新代码片段:

private static void updateFilter(Analytics analytics, String accountID) {

    FilterExpression details = new FilterExpression();
    details.setField("GEO_DOMAIN");
    details.setMatchType("EQUAL");
    details.setExpressionValue(".example.com");
    details.setCaseSensitive(false);

    // Construct the body of the request.
    Filter body = new Filter();
    body.setName("My Domain Filter");
    body.setType("EXCLUDE");
    body.setExcludeDetails(details);

    try {
        analytics.management().filters().update("<valid GA ID>", "<valid filter ID>", body).execute();
    } catch (GoogleJsonResponseException e) {
        System.err.println("There was a service error: "
                + e.getDetails().getCode() + " : "
                + e.getDetails().getMessage());
    } catch (IOException ioEx) {
        ioEx.printStackTrace();
    }

我得到的错误代码是400:需要字段ID。据我所知,过滤器所需的一切都已在方法中初始化。我不知道&#34;字段ID是否必需&#34;应该是指。

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:0)

我对Java没什么帮助。我之前用C#做过这个。

使用Update everthing时更新。因此,最好对过滤器进行操作,该过滤器返回过滤器主体更改,然后将其用作update

但如果你只是改变一些事情来使用Patch,那就更容易了。补丁将仅更新您发送的内容,而不是更新所有内容。