1

Ich erstellte die Beispielanwendung Asp.net, um den gesamten Kalender zu erhalten und Ereignis in einem Kalender hinzuzufügen.Meine Anwendung funktioniert gut, wenn ich es mit Visual Studio ausführen, es erfolgreich laden Seite, alle anzeigen Info Kalender, Ereignis in calendar.But hinzufügen, wenn ich die App auf IIS bereitstellen, Seite laden nie und es gibt die exception.KindlyGoogle Kalender API> net-Timeout-Ausnahme auf IIS

helfen

es folgt der Code „Request timed out“

private CalendarService InitGoogleService() 
{ 
UserCredential credential; 
string path = Server.MapPath("~") + @"\GCSc.json"; 
string credPath = Server.MapPath("~") + @"\Calendar_Data"; 
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets 
{ 
ClientId = "My Client Id",`enter code here` 
ClientSecret = "My Client Secret" 
}, Scopes, "user", CancellationToken.None, new Google.Apis.Util.Store.FileDataStore(credPath)).Result; 

    CalendarService service = new CalendarService(new BaseClientService.Initializer() 
    { 
     HttpClientInitializer = credential, 
     ApplicationName = ApplicationName, 
    }); 
    return service; 
} 

Request Timeout Exception enter image description here

+0

Wenn Sie es bereitstellen, fordert es die Authentifizierung an? Auf was hast du die Umleitungsuri eingestellt? In welchem ​​Anwendungspool läuft IIS? Gibt es irgendetwas im credPath-Verzeichnis auf dem Server? – DaImTo

+0

Ich habe dieses Problem einige Male in der Vergangenheit gesehen. Ich denke, es ist an der Zeit, dass wir es für immer festnageln. Ich werde versuchen, dein Problem neu zu erschaffen. – DaImTo

+0

ein Update, um das Problem zu beheben? – Mudasser

Antwort

0

Wir haben das gleiche Problem. In Visual Studio gibt es kein Problem, aber wenn ich nach IIS publiziere, erzeugt der Code ein Timeout.

Wenn der unten stehende Code lokal ausgeführt wird, wird ein Popup für google erstellt, in dem Anmeldeinformationen eingegeben oder ein Konto ausgewählt werden kann. Auf IIS erscheint das Popup nicht und deshalb erstellt die Anwendung ein Timeout.

public static void GetYutubeAccesToken(string id, string secret) 
    {  
     List<SocialMediaItems> lstSocialItems = new List<SocialMediaItems>(); 
     UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
       new ClientSecrets 
       { 
        ClientId = id, 
        ClientSecret = secret 
       }, 
       new string[] { YouTubeService.Scope.YoutubeReadonly }, 
       "user", 
       CancellationToken.None, 
       new FileDataStore(HttpContext.Current.Server.MapPath("~/files/accesToken")) 
      ).Result; 
    } 
+0

und was ist die Antwort? – Marwie