Ich muss UserAgent Strings von einer Konsolen-App analysieren, und das scheint eine einfache Möglichkeit zu sein, aber ich habe offensichtlich kein HttpRequest-Objekt und kann anscheinend kein falsches mit einem User-Agent-Header erstellen (Ich bekomme Plattform nicht unterstützt Ausnahme). Gibt es eine Möglichkeit, dies zu tun, oder sollte ich andere Alternativen zu User-Agent-Parsing untersuchen?Ist es möglich, HttpBrowserCapabilities aus einer C# -Konsolenanwendung zu verwenden?
Antwort
Der User-Agent
Header kann durch die HttpBrowserCapabilities
Klasse mit Hilfe eines BrowserCapabilitiesFactory analysiert werden, wie folgt:
var userAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.10) " +
"Gecko/20100914 Firefox/3.6.10";
var browser = new HttpBrowserCapabilities {
Capabilities = new Hashtable {{string.Empty, userAgent}}
};
var factory = new BrowserCapabilitiesFactory();
factory.ConfigureBrowserCapabilities(new NameValueCollection(), browser);
Das funktioniert! Danke! –
Danke das hat mein Problem auch gelöst! –
Ich möchte dies außerhalb einer asp.net-Umgebung (Analyse von Protokolldateien) ausführen. Es scheint den Agententyp und die Version nicht sehr gut zu bestimmen. "Mozilla/5.0 + (Windows + NT + 6.1) + AppleWebKit/537.36 + (KHTML, + wie + Gecko) + Chrome/37.0.2062.120 + Safari/537.36" = Chrome 37, aber "Mozilla/4.0 + (kompatibel; + MSIE + 7.0; + Windows + NT + 6.1; + Trident/4.0; + SLCC2; +. NET + CLR + 2.0.50727; +. NET + CLR + 3.5.30729; +. NET + CLR + 3.0.30729; + Media + Center + PC + 6.0; +. NET4.0C; +. NET4.0E; + InfoPath.3; + SynapseWorkstation.3.2.1; + MS-RTC + LM + 8; + Tablet + PC + 2.0) "= Mozilla. – Jeremy
- 1. Ist es möglich, Signal innerhalb einer C++ - Klasse zu verwenden?
- 2. Ist es möglich, eine Konsolenanwendung mit nw.js zu erstellen?
- 3. Ist es möglich, gcc aus einer Pipe zu lesen?
- 4. Ist es möglich, Inline-Vorlagen zu verwenden?
- 5. Ist es möglich, cin mit Qt zu verwenden?
- 6. Ist es möglich, C++ - Code zu symbolisieren?
- 7. Ist es möglich, in der C# -Konsolenanwendung ein Copyright-Symbol zu erhalten?
- 8. Ist es möglich, anonyme Funktionen in C++ .NET zu verwenden?
- 9. ist es möglich, Eigen mit c zu verwenden?
- 10. Ist es möglich, die Speichernutzung in einer C# -Anwendung zu verfolgen, ohne einen Profiler zu verwenden?
- 11. Ist es möglich, einen C++ - Namespace zu allen Symbolen aus einer C-Bibliothek hinzuzufügen?
- 12. Ist es möglich, AsyncTask in einer Serviceklasse zu verwenden?
- 13. Ist es möglich, mysqli_fetch_object mit einer vorbereiteten Anweisung zu verwenden
- 14. Ist es möglich, Variablen in einer ClearCase-Konfigurationsspezifikation zu verwenden?
- 15. Ist es möglich, Parallax in einer Facebook App zu verwenden?
- 16. Ist es möglich, Eigenschaften aus einer dynamischen Klasse zu entfernen?
- 17. Ist es möglich, C/C++ in Android Studio zu debuggen?
- 18. ist es möglich, eine Methode aus einer anderen Klasse innerhalb derselben Baugruppe zu verwenden?
- 19. Ist es möglich, eine Textdatei aus einer SQL-Abfrage auszuführen?
- 20. nicht möglich, Hallo Weltprogramm in C# Konsolenanwendung
- 21. Ist es möglich, 2 Mitgliedschaftsanbieter in ASP.NET zu verwenden?
- 22. Ist es möglich, ImportRange in Google Apps Script zu verwenden?
- 23. Ist es möglich, python suds zum Lesen einer WSDL-Datei aus dem Dateisystem zu verwenden?
- 24. Ist es möglich vordefinierte ivysettings.xml aus einer Grails-App zu verwenden
- 25. Ist es möglich, re2 von Python zu verwenden?
- 26. Ist es möglich, Reflexion mit LINQ zu Entität zu verwenden?
- 27. ist es möglich, Variablen im Remote-SSH-Befehl zu verwenden?
- 28. C++ - ist es möglich, Klassen- und Argumenttypen aus einem Elementfunktionstyp in einer Vorlage zu extrahieren?
- 29. Ist es nicht möglich, Generics dynamisch zu verwenden?
- 30. Ist es möglich, einen Unicode "argv" zu verwenden?
welche Art von Seitenanfrage Sie erfassen möchten ???? speziell von der Konsolen-App? –
Keine Seitenanforderung. Ich habe eine Liste von Benutzeragenten in einer Textdatei und möchte Browser, Version, OS und ein paar andere Dinge analysieren, die alle über Request.Browser verfügbar gewesen wären, aber jetzt versuche ich, sie zu bekommen eine Konsolenanwendung und eine Liste von UserAgent-Zeichenfolgen –