配置 WebSocket 请求

URL

要打开 Web 插座连接,您必须输入您希望检查的 Web 插座 URL 的端点或 IP 地址的 WebSocket URL(支持 ws:// 和加密 wss:// 协议)。 例如,wss://echo.websocket.org/

要打开更可视化的输入模式,请单击部分顶部的 “详细 “开关。

您可以在此处将网址转换为动态值或上下文参数。 例如,动态更改目标 URL。

发送数据

如果您需要在 “发送数据” 字段中将数据传输到目标端点,请以字符串或二进制格式指定消息。 Dotcom 监视器将使用 Web 插座协议将消息发送到目标端点,并等待响应。

Dotcom 监视器支持 Web 插座消息中的剃刀表达式。 要发送包含 Razor 表达式的字符串,请将其输入 “发送数据 “字段,然后使用 “准备脚本” 将消息类型设置为 Razor 表示。 否则,消息将被解析并作为文本发送。 使用 准备脚本 字段中的以下片段通知系统必须使用 Razor 发动机解析消息:

ProcessPostDataByRazor(currentTask);

除了 Razor 发动机外,Dotcom-Monitor 还使用数据掩码实现动态更改请求车身数据。 要了解如何在发送的数据中使用 Razor 语法和数据掩码,并配置动态变化的有效载荷,请参阅 HTTP 请求中如何动态更改有效载荷

响应验证(内容验证)

要验证从 WebSocket 接收的消息字符串,您可以在呼叫执行方案中断言关键字。 系统将等待来自目标终结点的响应,并检查收到的消息字符串中是否存在指定的关键字。 如果插座的响应中未检测到关键字,则会生成错误。

关键字 字段中,您可以指定要在响应消息中搜索的单词或短语。 使用纯文本指定关键字:

请注意,关键字对案例敏感。

准备脚本和发布脚本

字段可以包含 C#代码,可用于特定请求和 URL 数据,或用于验证或发布自定义标题。 请参阅” 使用准备脚本”和”后脚本” 文章,或联系技术支持以了解有关使用的更多详细信息。

可在 “准备脚本 “字段中指定 Web 套接头呼叫执行的动态场景。 动态场景可以包括一些带有二进制或字符串数据的操作。

二进制格式化操作(msg 为 Base64 编码):

  • ValidateBinary(字符串 msg) – 检查 WebSocket 响应是否等于指定的二进制数据。
  • 验证二进制内容(字符串 msg) – 检查 Web 插座响应是否包含指定的二进制数据。
  • 发送二进制(字符串 msg) – 向 Web 插座发送二进制消息。

文本格式化操作:

  • 发送文本(字符串msg)-将文本字符串发送到网络插座。
  • ValidateText(字符串 msg) – 检查来自 WebSocket 的响应是否等于指定的字符串。
  • ValidateTextContains(string msg) – 检查 WebSocket 响应是否包含指定的字符串。

如果 准备脚本 字段中指定了任何断言,系统将等待响应中指定的断言,并在验证成功后继续执行脚本。 如果未收到具有指定断言的消息,并且达到任务完成超时,我们将生成验证错误。

Dotcom 监视器允许您在准备脚本中包含任意数量的操作。 但是,如果达到任务完成超时,脚本执行将终止。 任务完成时间从脚本执行开始计算。

  • 示例:响应验证正常

  • 示例:响应验证失败

请注意,如果“准备脚本”字段包含动态场景中的相应步骤,则将忽略发送数据内容验证字段。 例如,如果脚本中包含以下步骤,则将忽略 发送数据内容验证 字段:

currentTask.SendText("This is a test");
currentTask.ValidateText("This is a test");

当前 任务 参数不依赖于任务名称且具有当前处理的任务类型的位置。

SSL/证书检查

安全套接字层 SSL 证书检查包括以下验证选项:

  • 授权: 验证证书链是否包含可信或不信任的根证书。
  • 通用名称 (CN): 验证您导航的地址是否与地址签名的地址证书相匹配。
  • 日期: 验证证书到期日期。
  • 撤销: 验证证书的信任链不包含被撤销的证书。
  • 使用: 验证证书链,以不当使用中间证书。
  • 天中的过期提醒: 通知(作为错误)有关证书过期的提醒。
  • 客户证书:客户证书名称。

时间验证阈值(秒内)

输入服务在结束请求执行并返回错误之前应等待网页响应的秒数。 如果将其留空,则请求的默认超时为 60 秒。

基本身份验证

The Basic Authentication scheme is used to allow users to access content on some websites. Once provided, login credentials will be passed along with the request header to the web server.

  • Username: contains a username for HTTP/S basic or digest access authentication.
  • User Password: contains a password for HTTP/S basic or digest access authentication.

Do not confuse Basic Authentication with other authentication schemes such as Bearer Authentication that involves bearer tokens and OAuth 2.0 that uses access tokens.

Read the articles on Basic Authentication Username and Password and Monitoring OAuth 2.0-based APIs for more information.

如果有必要,该选项允许添加任何其他自定义标题。

  • 标题名称:指定参数的名称,因为它将显示在请求中。
  • :输入与参数名称相关的值。

DNS 选项

DNS 选项功能允许用户选择在监控任务期间如何执行域名服务器 (DNS) 请求。

要指定解决主机名的模式,请在 DNS 解析模式 部分选择可用模式之一。 有关功能配置的更多详细信息,请参阅 DNS 模式选项

自定义 DNS 主机部分允许设置 IP 地址到主机名的映射。 支持 IPv6 和 IPv4 DNS 解析。

要指定映射,请在相应的字段中输入 IP 地址和主机名。

例子:

192.168.107.246 example.com user.example.com userauth.example.com tools.example.com
192.168.107.246 example.com
192.168.107.246 user.example.com
192.168.107.246 userauth.example.com

另请参阅 :DNS 模式选项

错误筛选器

You can create filters that will ignore specific errors that you know may occur and are not relevant to the goal of a specific device. The system will not generate alerts on responses with error codes that match the filters. For example, DNS errors could be filtered out based on who is responsible for DNS server operations. In addition, you can configure the system to ignore a range of error codes using a dash, or multiple error codes using semicolons as a separator.

You can find a comprehensive list of Error Codes in the HTTP Status Codes List | HTTP Error Codes Explained article of this wiki.

For example, if you do not care about 404 errors on one particular device, you can filter them out so that you do not receive alerts when they the errors are detected. The error details will be available for review in the device reports.

If you want to ignore an error with a specific code and type while monitoring, you can configure the Ignore Error Codes option in the device settings. If the system detects a response with the specified error type and code, the response will be considered as successful and its status will be changed to OK. Note that ignored errors will not be reflected on the reports and can’t be tracked down.