/// <summary> /// Parse user agent /// 解析用户代理信息 /// </summary> /// <param name="userAgent">User agent</param> /// <param name="parser">UAParser</param> /// <returns>Action result</returns> protected IActionResult ParseUserAgent(string?userAgent, out UAParser parser) { // User-Agent validatation parser = new UAParser(userAgent); if (!parser.Valid || parser.IsBot) { return(ApplicationErrors.NoUserAgent.AsResult()); } return(Utils.Actions.ActionResult.Success); }
public void Parse_Bulk(string userAgent, bool isBot, UADeviceFamily device, string os, string client) { // Arrange & act var parser = new UAParser(userAgent); var result = parser.ToString(); // Assert Assert.IsTrue(parser.IsBot == isBot, $"IsBot not equal to {isBot}"); Assert.IsTrue(parser.Device?.Family == device, $"Device Family {parser.Device?.Family} not equal to {device}"); Assert.IsTrue(parser.OS?.ToString() == os, $"OS Family {parser.OS?.ToString()} not equal to {os}"); Assert.IsTrue(parser.Client?.ToString() == client, $"Client Family {parser.Client?.ToString()} not equal to {client}"); }
/// <summary> /// Parse user agent /// 解析用户代理信息 /// </summary> /// <param name="userAgent">User agent</param> /// <param name="identifier">Identifier</param> /// <returns>Action result</returns> protected IActionResult ParseUserAgent(string?userAgent, out string identifier) { identifier = string.Empty; // User-Agent validatation var parser = new UAParser(userAgent); if (!parser.Valid || parser.IsBot) { return(ApplicationErrors.NoUserAgent.AsResult()); } identifier = parser.ToShortName(); return(Utils.Actions.ActionResult.Success); }