首页 文章

asp.net c#google api文档 - 401未经授权

提问于
浏览
0

我有这个代码

DocumentsService vService = new DocumentsService("test");
vService.setUserCredentials("vUserName", "vPassword");
RequestSettings vSettings = new RequestSettings("test");
DocumentsRequest vDocReq = new DocumentsRequest(vSettings);
Feed<Document> vFeed = vDocReq.GetEverything();
foreach (Document d in vFeed.Entries) {
  lbxDocumente.Items.Add(d.Title + " " + d.Author);
}

为什么我会得到这个例外?

System.Net.WebException:远程服务器返回错误:(401)未经授权

1 回答

  • 1

    此行正在尝试使用实际字符串"vUserName"和"vPassword"进行身份验证:

    vService.setUserCredentials("vUserName", "vPassword");
    

    您是不是要将其改为,为了使用您在其他地方初始化的变量?

    vService.setUserCredentials(vUserName, vPassword);
    

    (顺便说一句, v 前缀是什么?我一般都没有't like prefixes like this at all, but I'从未见过 v 作为前缀......)

    编辑:您也没有在任何地方将请求与服务相关联 . 我试过这段代码,它运行正常:

    DocumentsService service = new DocumentsService("test");
    service.setUserCredentials(user, password);
    RequestSettings settings = new RequestSettings("test");
    DocumentsRequest docReq = new DocumentsRequest(settings);
    docReq.Service = service;
    Feed<Document> feed = docReq.GetEverything();
    foreach (Document d in feed.Entries) {
      Console.WriteLine(d.Title);
    }
    

相关问题