【发布时间】:2011-08-21 14:05:54
【问题描述】:
我有以下正则表达式
/\<oauth_token\>([^\<]*)\<\/oauth_token\>/
我看到未转义
这个正则表达式被分配给一个变量并在整个文件中使用。它位于 nodejs 模块中。
这是一种绕过不符合标准的 OAUth 响应的技巧,该响应将在未来的某个时候修复。我不想引入 XML 解析器作为解决问题的额外依赖项。
我在 JSHint 和 node-jslint 中都看到了这种违规行为。
您可以在github 上查看该文件的完整源代码 JSHint 的确切输出如下:
lib/oauth-helper.js: line 5, col 21, Unexpected escaped character '<' in regular expression.
lib/oauth-helper.js: line 5, col 39, Unexpected escaped character '<' in regular expression.
lib/oauth-helper.js: line 5, col 44, Unexpected escaped character '<' in regular expression.
lib/oauth-helper.js: line 6, col 22, Unexpected escaped character '<' in regular expression.
lib/oauth-helper.js: line 6, col 47, Unexpected escaped character '<' in regular expression.
lib/oauth-helper.js: line 6, col 52, Unexpected escaped character '<' in regular expression.
【问题讨论】:
-
您的脚本是否在
<script>标记中? -
它在一个nodejs模块中,我已经更新了问题
-
node.js 是否没有用于提取令牌值的 XML 解析器?
-
我确定确实如此,但这是已知 XML 的唯一用例。我不想添加额外的依赖项,特别是因为这是绕过不符合标准的 OAUth 响应的一种技巧,它将在未来的某个时候修复。
标签: javascript regex node.js jslint