aak*_*aki 9 validation json escaping
以下JSON对象有效:
{
"foo": "bar",
"pattern": "^(\/?[-a-zA-Z0-9_.]+)+$"
}
Run Code Online (Sandbox Code Playgroud)
而这不是:
{
"foo": "bar",
"pattern": "^(\/?[-a-zA-Z0-9_.]+)+\.jpg$"
}
Run Code Online (Sandbox Code Playgroud)
这是转义的dot(\.),但我不明白为什么这不应该是有效的JSON.我需要在真正的JSON模式中包含这些模式.正则表达式要复杂得多,并且没有办法错过重点,特别是点.
BTW,逃避角色类中的大肆宣传,例如在休息验证中.[a-z\-]
我该如何解决这个问题?
编辑:我用http://jsonlint.com/,http://jsonvalidator.mytechlabs.com/和几个节点库.
eva*_*nal 10
你需要在这里双重逃脱.斜杠是json中的转义字符,所以你不能逃避点(因为它看到它),而你需要转义反斜杠所以你的正则表达式\.就像它应该的那样(json期望在转义后保留一个字符,即a引用或其他斜线或其他东西).
// passes validation
{
"foo": "bar",
"pattern": "^(/?[-a-zA-Z0-9_.]+)+\\.jpg$"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3909 次 |
| 最近记录: |