0

我有一个带有 [WebGet] 方法的 WCF 数据服务。发送到服务的 url 看起来像

http://example.com/MyMethod?param='test'

但由于参数被单引号括起来,我的防火墙阻止传入请求,说这是一次 SQL 注入攻击尝试。

将单引号编码为 %27 也不起作用。

有没有办法在 WCF 中的查询参数值周围包含单引号?

4

1 回答 1

0

您正在使用RESTFul服务。

例如:如果方法如下

[OperationContract]
[WebGet(UriTemplate = "{param}")]
void MyMethod(string param);

然后你可以直接使用url下面的类似而不用单引号。

http://example.com/MyMethod?param=test

或者

http://example.com/MyMethod/param=test
于 2012-11-16T17:44:37.380 回答