添加新的“基于内容的”视图规则

添加规则以定义站点的逻辑结构的指示信息和示例。

开始之前

在“扫描配置”对话框的“基于内容的”视图中(探索 > 基于内容),您可以使用以下两种定义类型来定义基于内容的结构:
  • 逻辑内容路径(如面包屑)
  • 定制(使用 regexp 来定义您自己的定制节点)

这样做使 AppScan® 能够显示逻辑应用程序树,而不是在单个节点下列出站点的较大的部分。如果定义了多个规则,那么 AppScan 将尝试按规则列出的顺序将每个 URL 均与规则匹配。一旦它发现匹配,便会将 URL 包含在基于内容的树中该规则之后,并前进到下一个 URL。

过程

  1. 通过单击“加号”按钮来添加新的定义(或通过选择定义并单击“编辑”按钮来编辑现有定义)。请参阅下表中的字段描述。
    设置 描述
    名称 该规则的名称。
    描述 (可选)该规则的描述。
    规则类型 选择“逻辑内容路径”或“定制”。其余字段根据您的选择不同而不同。
    逻辑内容路径
    内容路径 与 HTML 中内容路径匹配的 regexp。
    分隔符 与 HTML 中内容路径中的层次结构分隔符匹配的 regexp。
    节点显示名称 与节点名(会向应用程序用户显示,并将用在“应用程序树”中)匹配的 regexp。
    条件 (可选)可定义要包含在该节点位置中的响应的 regexp。
    定制
    节点位置 使用标准 URL 格式来描述满足该规则条件的节点应该放在应用程序树的哪个位置(例如:/Home/Buy/Books)。如果路径不存在,那么将会创建路径。
    条件 定义要包含在该节点位置中的响应的 regexp。如果页面内容与该条件匹配,那么它将包含在基于内容的树中。
    注: 需要或接受正则表达式的字段具有“表达式测试”按钮:,该按钮将打开 Expression Test PowerTool 以帮助您验证正则表达式的语法。

    如果您需要其他帮助,以下链接将很有帮助:http://www.regular-expressions.info/quickstart.html

  2. 请使用上/下箭头以这些定义的应用顺序来加以安排。
  3. 确认已选中要应用的每条规则旁的复选框。
  4. 单击确定以保存更改。

示例

以下这些表显示了这两种规则类型的样本内容。
表 1. 基于内容视图规则
设置 样本 含义
内容路径 <title>(.*?)</title> 标题标记之间的所有文本都将用作节点名的基础。
分隔符 [:\->|] 这五个字符将被视为分隔符。因此:

<title>Home:Accounts</title>

<title>Home:Plans</title>

将在应用程序树中显示为父节点 Home 及其两个子节点:AccountsPlans

节点显示名称 ^\s*(.*?)\s*$ 为节点命名时,文本前后的空格都将被移除。
条件 Log out 只有包含词组“Log out”的页面才会包含在应用程序树中该规则下。
表 2. 定制规则
设置 样本 含义
节点位置 /root/child/grandchild 满足条件的所有页面都将添加到应用程序树中的以下路径下 /root/child/grandchild
注: 如果指定分支中的父节点不存在,那么将予以创建。
条件 因为此字段为空,所以该规则所应用于的所有内容都将添加到该节点位置。因此,如果该规则出现在上述规则之后,那么所有不包含词组“Log out”的页面都将添加到节点下 /root/child/grandchild