Geoserver cql 过滤器,未读取 URL 中的右单引号
Geoserver cql filter, closing single quote in URL is not read
我在使用 CQL 过滤器时遇到了一个非常奇怪的行为。这是使用 AJAX
时的 URL 结果
http://localhost/geoserver/visualization/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=visualization:pothole,visualization:HPMS&outputFormat=text/javascript&format_options=callback:loadFeatures&srsname=EPSG:3857&cql_filter=branchCode='N00225' AND direction='S'
现在看下图,就是控制台日志中显示的上面URL。
请注意 URL 在 cql_filter=branchCode='N00225
之后中断,它不会读取结尾的 '
。如果我点击 URL 它会给我这个错误:
<ows:ExceptionText>Could not parse CQL filter list. Lexical error at line 1, column 19. Encountered: <EOF> after : "\'N00225" Parsing : branchCode='N00225.</ows:ExceptionText>
这是我的 javascript 代码,用于生成上面的 branchCode
"branchCode='"+val+"'";
这是什么原因,如何解决?
我不确定为什么,但如果我像这样修改我的 cql 过滤器字符串,它就会起作用
filter = filter.replace(/'/g, '%27').replace(/ /g, '%20');
我在使用 CQL 过滤器时遇到了一个非常奇怪的行为。这是使用 AJAX
时的 URL 结果http://localhost/geoserver/visualization/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=visualization:pothole,visualization:HPMS&outputFormat=text/javascript&format_options=callback:loadFeatures&srsname=EPSG:3857&cql_filter=branchCode='N00225' AND direction='S'
现在看下图,就是控制台日志中显示的上面URL。
请注意 URL 在 cql_filter=branchCode='N00225
之后中断,它不会读取结尾的 '
。如果我点击 URL 它会给我这个错误:
<ows:ExceptionText>Could not parse CQL filter list. Lexical error at line 1, column 19. Encountered: <EOF> after : "\'N00225" Parsing : branchCode='N00225.</ows:ExceptionText>
这是我的 javascript 代码,用于生成上面的 branchCode
"branchCode='"+val+"'";
这是什么原因,如何解决?
我不确定为什么,但如果我像这样修改我的 cql 过滤器字符串,它就会起作用
filter = filter.replace(/'/g, '%27').replace(/ /g, '%20');