Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# GoogleWebAuthorizationBroker.AuthorizationAsync在转移服务器中失败_C#_Api_Web Applications_Calendar - Fatal编程技术网

C# GoogleWebAuthorizationBroker.AuthorizationAsync在转移服务器中失败

C# GoogleWebAuthorizationBroker.AuthorizationAsync在转移服务器中失败,c#,api,web-applications,calendar,C#,Api,Web Applications,Calendar,GoogleWebAuthorizationBroker.AuthorizationAsync()在(farmed,4.5 NET)临时服务器上失败,但在本地服务器上工作得很好。我遵循了帮助热线上的每一条代码,但仍然没有用 这是我的密码: String gpath = Server.MapPath("credentials/siteAPI.json"); UserCredential credential; string credPath = Server.MapPath("credentia

GoogleWebAuthorizationBroker.AuthorizationAsync()
在(farmed,4.5 NET)临时服务器上失败,但在本地服务器上工作得很好。我遵循了帮助热线上的每一条代码,但仍然没有用

这是我的密码:

String gpath = Server.MapPath("credentials/siteAPI.json");
UserCredential credential;

string credPath = Server.MapPath("credentials");

using (var stream = new FileStream(gpath, FileMode.Open, FileAccess.Read))
{
      credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                    GoogleClientSecrets.Load(stream).Secrets,
                    new[] { CalendarService.Scope.Calendar },//
                    "xx@ccc.com",
                    CancellationToken.None,
                     new AppDataFileStore(credPath)
                    ).Result;
}
我得到了这个错误:

System.AggregateException: One or more errors occurred.
---> System.ComponentModel.Win32Exception: Access is denied
    at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
    at Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
    at Google.Apis.Auth.OAuth2.GoogleWebAuthorizationBroker.d__1.MoveNext() in C:\Users\mdril\Documents\GitHub\google-api-dotnet-client\Src\GoogleApis.Auth.DotNet4\OAuth2\GoogleWebAuthorizationBroker.cs:line 59
--- End of inner exception stack trace ---
    at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
    at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification)
    at System.Threading.Tasks.Task`1.get_Result()
    at z2.Page_Load(Object sender, EventArgs e) in e:\hostingspaces\cal1234\mysitecalendar.com\wwwroot\z2.aspx.cs:line 169
---> (Inner Exception #0) System.ComponentModel.Win32Exception (0x80004005): Access is denied
    at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
    at Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
    at Google.Apis.Auth.OAuth2.GoogleWebAuthorizationBroker.d__1.MoveNext() in C:\Users\mdril\Documents\GitHub\google-api-dotnet-client\Src\GoogleApis.Auth.DotNet4\OAuth2\GoogleWebAuthorizationBroker.cs:line 59<---
System.AggregateException:发生了一个或多个错误。
--->System.ComponentModel.Win32异常:访问被拒绝
在Microsoft.Runtime.CompilerServices.TaskWaiter.ThrowForNonSuccess(任务任务)中
在Microsoft.Runtime.CompilerServices.TaskWaiter.HandleNonSuccess(任务任务)中
在C:\Users\mdril\Documents\GitHub\Google api dotnet client\Src\GoogleAppis.Auth.DotNet4\OAuth2\GoogleWebAuthorizationBroker.cs中的Google.api.Auth.OAuth2.GoogleWebAuthorizationBroker.d\uu 1.MoveNext()中:第59行
---内部异常堆栈跟踪的结束---
位于System.Threading.Tasks.Task.ThrowifeException(布尔值IncludeTaskCanceledException)
位于System.Threading.Tasks.Task`1.GetResultCore(布尔waitCompletionNotification)
在System.Threading.Tasks.Task`1.get_Result()中
在e:\hostingspace\cal1234\mysitecalendar.com\wwwroot\z2.aspx.cs中的z2.Page_加载(对象发送方,事件参数e):第169行
--->(内部异常#0)System.ComponentModel.Win32Exception(0x80004005):访问被拒绝
在Microsoft.Runtime.CompilerServices.TaskWaiter.ThrowForNonSuccess(任务任务)中
在Microsoft.Runtime.CompilerServices.TaskWaiter.HandleNonSuccess(任务任务)中

在C:\Users\mdril\Documents\GitHub\Google api dotnet client\Src\Google api.Auth.OAuth2.GoogleWebAuthorizationBroker.cs中的Google.api.Auth.OAuth2.GoogleWebAuthorizationBroker.d\uu 1.MoveNext()上,我花了几个小时研究同一问题,最后找到了一篇帮助我解决问题的帖子。 邮局在这儿

在这个代码为我工作的dev服务器上,在credPath(请参阅上面代码中的这个变量)文件夹中创建了一个令牌响应文件

我只是把这个文件复制到了登台服务器上,在那里它对我不起作用。 这为我解决了问题

这可能是因为向用户显示了一个同意web页面(在开发服务器中工作),在这种情况下无法显示该页面,从而导致此错误。
同样,这都是理论,但上述解决方案对我有效。

gpath是您从google developer下载的文件吗?如果是,您是否直接将文件复制到项目中?如果是,请确保将生成操作更改为“内容”,并将“复制到输出目录”更改为“始终复制”是的gpath是我从google开发者控制台下载的凭据,是的,我在本地复制到我的项目中并上载到我的登台服务器。我始终使用的生成操作是正常的生成网站,我是否应该使用其他内容?您需要使用生成操作复制到内容并复制到输出目录以“始终复制”我以前做过你建议的事情,一切都很好,但这不是正确的方法。必须向登台服务器的任何用户显示“同意”页面,否则此方法无效。我尝试了每一个博客和技巧,但没有一个对我有效,仍然得到相同的错误。。。还有其他想法吗?