问题描述
|
我这样访问我的网络服务:
http://localhost/SuiPService/SuiPDataService.svc/GetShowCodeFiltered?&showName = \'auto \'
它工作正常,但是当我尝试时:
http://localhost/SuiPService/SuiPDataService.svc/GetShowCodeFiltered?&showName = \'auto \'\'
它失败了,好的,我理解了,但是如果我像这样编码网址:
http://localhost/SuiPService/SuiPDataService.svc/GetShowCodeFiltered?&showName = \'auto%27 \'
我收到错误请求错误-查询语法错误。太
解决办法是什么?
解决方法
失败的原因是因为%27等于\'。
即使URL框没有说明,所有内容在发送到Web服务器之前都已编码。
这将变得难以维护,并可能使您的用户困惑。我会对其进行更改,以免在变量中添加\',这样,如果需要使用\,就可以使用http://localhost/SuiPService/SuiPDataService.svc/GetShowCodeFiltered?&showName = auto \'。 '之后。
另外,如果您需要自动使用\'\'。考虑在服务器端执行此操作。
看来您使用它来构建SQL查询...
请参阅此处以了解PHP由于该确切原因而弃用它的原因:http://en.wikipedia.org/wiki/Magic_quotes
希望这可以帮助,
杰弗里·凯文·普瑞