.NET C#-谷歌AdWords API授权问题”;用户“权限被拒绝”;

.NET C#-谷歌AdWords API授权问题”;用户“权限被拒绝”;,c#,.net,asp.net-mvc,google-api,google-ads-api,C#,.net,Asp.net Mvc,Google Api,Google Ads Api,我一直在尝试连接到GoogleAdWordsAPI,我成功了 只从一个客户端接收信息。 每次我使用不同的ClientCustomerId时,它都会抛出一个异常 内部详细信息-“用户权限被拒绝” (用Web.config编写) 不过,只有一个客户端可以工作。我不知道他们有什么不同,他们都是一样的。唯一的区别是,工作客户是我客户列表中的第一个 以下是我接收活动信息的代码: AdWordsUser user = new AdWordsUser(); Campai

我一直在尝试连接到GoogleAdWordsAPI,我成功了 只从一个客户端接收信息。 每次我使用不同的ClientCustomerId时,它都会抛出一个异常 内部详细信息-“用户权限被拒绝”

(用Web.config
编写)

不过,只有一个客户端可以工作。我不知道他们有什么不同,他们都是一样的。唯一的区别是,工作客户是我客户列表中的第一个

以下是我接收活动信息的代码:

            AdWordsUser user = new AdWordsUser();
        CampaignService campaignService =
(CampaignService)user.GetService(AdWordsService.v201506.CampaignService);
        Selector selector = new Selector();
        selector.fields = new string[] { "Id", "Name", "Status"};
        selector.paging = new Paging();

        int offset = 0;
        int pageSize = 500;

        CampaignPage page = new CampaignPage();

        try
        {
            do
            {
                selector.paging.startIndex = offset;
                selector.paging.numberResults = pageSize;
                string result = "";
                // Get the campaigns.
                page = campaignService.get(selector);

                // Display the results.
                if (page != null && page.entries != null)
                {
                    int i = offset;
                    foreach (Google.Api.Ads.AdWords.v201506.Campaign campaign in page.entries)
                    {
                        result += string.Format("{0}) Campaign with id = '{1}', name = '{2}' and status = '{3}'" +
                          " was found.", i + 1, campaign.id, campaign.name, campaign.status);
                        i++;
                    }
                }
                Response.Write(result);
                offset += pageSize;
            } while (offset < page.totalNumEntries);

            int a = page.totalNumEntries;
        }
        catch (Exception e)
        {
            throw new System.ApplicationException("Failed to retrieve campaigns", e);
        }
AdWordsUser user=new AdWordsUser();
活动服务活动服务=
(活动服务)user.GetService(AdWordsService.v201506.ActivationService);
选择器=新选择器();
selector.fields=新字符串[]{“Id”、“Name”、“Status”};
selector.paging=新分页();
整数偏移=0;
int pageSize=500;
活动页面=新建活动页面();
尝试
{
做
{
selector.paging.startIndex=偏移量;
selector.paging.numberResults=页面大小;
字符串结果=”;
//获取这些活动。
page=活动服务.get(选择器);
//显示结果。
if(page!=null&&page.entries!=null)
{
int i=偏移量;
foreach(Google.Api.Ads.AdWords.v201506.Campaign页面中的活动条目)
{
result+=string.Format(“{0}”)活动,id='{1}',name='{2}',status='{3}'+
“已找到。”,i+1,campaign.id,campaign.name,campaign.status);
i++;
}
}
响应。写入(结果);
偏移量+=页面大小;
}而(偏移量<总页数);
int a=页面总数;
}
捕获(例外e)
{
抛出新System.ApplicationException(“检索活动失败”,e);
}

提前谢谢

你是如何进行身份验证的?我正在使用OAuth2进行身份验证。你确定你正在进行身份验证的用户对你试图访问的帐户具有读取权限吗?我有一个具有权限的MCC manager帐户,我想读取他的客户机活动信息。由于某种原因,我只能阅读某个客户的信息,我想不出我写了一个错误的客户ID,这只会导致客户找不到。这绝对是一个授权问题