ADS.TXT规范是否对空间进行立场

  • 本文关键字:空间 是否 TXT 范是否 ADS ads
  • 更新时间 :
  • 英文 :


ads.txt是一个文件,每个广告支持的网站都应该放入其根文件夹中。IAB ADS.TXT规范指示它看起来像:

<FIELD #1>, <FIELD #2>, <FIELD #3>, <FIELD #4>

数据应在接受不同空间或字段的文件中是自由的 分离字符。

,但同样的呼吸也提到:

消费者系统应忽略任何空格或选项卡的序列。没有字段应包含选项卡,逗号或Whitespace ,否则应使用URL编码[13]。

将其逃脱

我的问题是:如果"没有字段应包含whitespace" ,为什么规范在其自己的示例中使用空格[update:我是指之间的空格 the fields]]?是否可以接受?默认值应该是什么?stackoverflow本身使用空间,但这并不意味着它是正确的。

您问:

如果"没有字段应包含空格",为什么规范在自己的示例中使用空间?

混乱的来源仅仅是 <FIELD #1>, <FIELD #2>, ...不是示例,而是要遵循的格式或结构,换句话说a andtax 。作为语法 <FIELD #1>确实是一个符号,是标记位置的备用。您可以用greenadexchange.com

等值替换该位置

规则:

没有字段应包含... whitespace

可以更好地理解为:

无字段 value 应包含... whitespace

  • field此处是在一个点或位置的内容的意义上使用的,换句话说 field value
  • 因此,IAB作者决定使用的特定符号,例如<FIELD #1>

也就是说,IAB作者可能可以通过编写不使用诸如<FIELD#1>之类的空间的符号来改进,第二个字段,第二个字段的<FIELD#2>等。这将有助于避免潜在的混乱风险,同时仍在传达该位置上有第一个领域,该位置的第二个领域,依此类推。

您也想澄清:

但是周围的空间呢?默认情况下规范是否喜欢<FIELD#1>,<FIELD#2>,<FIELD#3>,<FIELD#4><FIELD#1>, <FIELD#2>, <FIELD#3>, <FIELD#4>

规范似乎没有偏好,仅规范允许 因为它被忽略。

建议:

  • 逗号之后有一个空间,以帮助仅与一条长期不间断的行相比,使其清晰,更可读。

下面的详细说明。

语法

查看围绕<FIELD...的其他文本时,您最初引用的iabs.txt规范,PDF Page 7:

... The records consist of a set of
lines of the form:
<FIELD #1>, <FIELD #2>, <FIELD #3>, <FIELD #4>
or
<VARIABLE>=<VALUE>

它说的是of the form:,这表明它要展示的是结构,换句话说,语法,而不是一个示例。直到以后页面,它也不使用example一词,因此,该<FIELD #1>, ...更好地理解为不是字面的示例,而是说明语法。

另外,当您看到角度括号(<>((例如<FIELD #1><VARIABLE>(时,这是在技术手册或文档中经常使用的惯例,以表示角度支架和内部的任何内容,就是实际使用时,用一个值替换为

field限制(例如PDF Page 8:No field should contain tabs, commas or whitespace(可以更好地理解为对您最终写入的字段价值的限制,而与<FIELD #1>无关,这仅仅是一种惯例,这是一种与您交流的方式在该位置或"位置"的第一个字段。

示例4.1

稍后在本节中:4. EXAMPLES

我们可以看到我们之前看到的语法

<FIELD #1>, <FIELD #2>, <FIELD #3>, <FIELD #4>

是这样应用的:

greenadexchange.com, XF7342, DIRECT, 5jyxf8k54

我们可以将语法与其实现进行比较:

| SYNTAX     | EXAMPLE             | WHAT                             |
| ---        | ---                 | ---                              |
| <FIELD #1> | greenadexchange.com | Domain value                     |
| ,          | ,                   | Delimiter                        |
|            |                     | Ignorable whitespace             |
| <FIELD #2> | XF7342              | Publisher's Account ID value     |
| ,          | ,                   | Delimiter                        |
|            |                     | Ignorable whitespace             |
| <FIELD #3> | DIRECT              | Type of account value            |
| ,          | ,                   | Delimiter                        |
|            |                     | Ignorable whitespace             |
| <FIELD #4> | 5jyxf8k54           | Certification Authority ID value |
  • 该语法的<FIELD #1>,替换为greenadexchange.comgreenadexchange.com在其中没有空格
  • 逗号(,(是一个定界符,因为规范,PDF Page 7:a comma separated format,因此它是分隔符或分隔符
  • whitespace((将被忽略,因为通常所有的空间都必须忽略: ,
  • 这就是为什么您的现场价值,规格强调您不应该拥有空格,这可能是因为它可能会混淆事物,因为它应该忽略whitespace

在此示例中,其余的理解适用于

这些是规则,但至于偏好,我找不到任何特别喜欢逗号之后空间的东西。

,但我强烈建议写逗号,然后是 space ( <...>(,因为它比不间断的文本更清晰,更可读的人类。清晰度有助于最大程度地减少误解和错误的风险,并且从长远来看通常使其更加可维护。

其他想法

阅读更多技术文档时,您可能会看到角度括号的其他示例(<FIELD 1>(表示您替换的内容。一个有趣的实例是在中,"开放式基本规格"第7期,2018年版, 12.公用事业约定:

4. Frequently, names of parameters that require substitution by actual values are shown with embedded <underscore> characters. Alternatively, parameters are shown as follows:
<parameter name>
  • 导致您混乱的CC_32似乎是这种替代方法

如果IAB作者想更有帮助并避免造成混乱的风险,那么他们可能会写出没有空间的语法

<FIELD#1>, <FIELD#2>, <FIELD#3>, <FIELD#4>

或"嵌入式下划线"字符,如开放式群体所建议的:

<FIELD_1>, <FIELD_2>, <FIELD_3>, <FIELD_4>

可能会更有帮助,因为它进一步强调了没有空格的观点,并且避免了潜在的混乱。

最新更新