Ich habe mehrere ASP.NET-Sites, gehostet auf der gleichen Domäne (verschiedene Subdomains) und arbeiten über HTTPS.Interaktionsproblem zwischen WCF-Dienst und ASP.NET-Sites mit Session ohne Cookies, verschiedene Subdomains
Ich habe WCF-Dienst, gehostet auf der gleichen Domäne.
Ich habe einen separaten State Server für Sitzungen.
Alle Standorte cookieless Sitzung verwenden (wenn jemand fragt, warum - ich später antworten, aber es ist ein ‚Muss‘)
Auf meinen Seiten verwende ich Grid-Komponenten von Telerik (aber eigentlich spielt es keine Rolle), dass Nach Daten vom WCF-Dienst fragen und diese Daten angeben
Die Probleme sind:
1) Ich kann nicht POST-Anforderung an WCF-Dienst von Javascript machen verwalten: aus irgendeinem Grund ist es immer entweder GET oder OPTIONS (egal ob ich Sys.Net.WebServiceProxy aufrufen oder einfach nur eine einfache jQuery AJAX Anfrage). Es passiert sogar, wenn ich den COOKIE-Modus anzeige, nicht cookielos. Vielleicht bekomme ich deswegen "405 Method not allowed" Fehler - WCF ist für POST-Anfrage eingestellt, aber die Seite sendet GET ...
2) Ich kann SESSION nicht von meinen Webseiten abrufen! Ich habe Ansatz versucht, den ich gefunden habe, aber WCF verwendet immer OWN-Sitzung, anstatt sich mit vorhandener ASP.NET-Sitzung zu verbinden, trotz ASP.NET-Kompatibilitätsmodus. Ich brauche SESSION von Daten zwischen Standorten und WCF-Dienst auszutauschen
3) Ich Idee nicht habe derzeit, wie die Sicherheit zu verwalten, wenn Daten zwischen Erwähnten Austausch im Lichte der oben genannten Probleme ...
4) Ich weiß nicht genau, wie web.config für WCF-Service in meinem Fall aussehen sollte, weil ich Tonnen von verschiedenen Varianten gesehen habe, aber alle für einige einfache Fälle.
Würde wirklich für die Hilfe geschätzt werden! Ich bin schon seit 2 oder 3 Wochen fest, weit hinter dem Plan, aber nichts funktioniert noch ... Ich kann sehen, dass es einige Informationen über ähnliche Probleme gibt, aber ich habe Angst, etwas Kleines zu verpassen - im Web. Config oder Methode Attribut oder IIS-Einstellung, etc - und f ... bis alles.
Zu viele Probleme und zu wenig Zeit für Experimente :(
Danke verwenden die Dinge, für die Klärung ein bisschen! Über was ich versuche zu tun. Nun, wir haben eine riesige Unternehmens-Website mit Hunderten von Entitäten. Die meisten dieser Entitäten werden mit Gittern dargestellt (Liste der Entitäten, ihrer Ereignisse, etc.). Es können insgesamt zehntausende Datensätze pro Ansicht mit Link zu detaillierten Informationen, Ajax-Popups usw. sein. Natürlich verwenden wir Paging :) Wir verwenden Microsoft Enterprise Library und folgen Sie deren Regel mit DataBase Provider, Controller und Entity. Das ist unsere Geschäftslogik. Also hatten wir eine Objektdatenquelle, die Entity an das Grid bindet. Und arbeiten "serverseitig". – Alexander
Jetzt entschieden wir uns, clientseitige Bindung und Dienste zu verwenden, Filterung, keine Postbacks, kein Seiten-Reload (Ajax-Panels sind nicht sehr zuverlässig, deshalb würden wir es vorziehen, sie nicht zu verwenden). So - clientseitig sendet die Anfrage an den WCF-Dienst mit einigen Rasterparametern (Startzeile, Zeilennummer usw.) und der WCF-Dienst sollte eine Antwort senden, um das Raster zu füllen. – Alexander
Wirklich, es funktionierte irgendwie schon, aber dann schien es, dass es auch gut wäre, die Sitzung von Websites für den WCF-Dienst zu teilen, um dort einige Daten zu speichern (in einigen Fällen werden wir dies wahrscheinlich brauchen, aber wenn es sicher ist nicht möglich ohne einige ernsthafte Sachen, wie Speichern von Sitzung in der Datenbank - langsam, dann ...) – Alexander