WCF Rest服务的参数编码 - Post方法

时间:2012-11-26 08:40:04

标签: iphone wcf rest

我正在为IPhone应用程序的WCF休息服务部分工作。我的一种方法如下。

[OperationContract]
        [WebInvoke(Method="POST",
                   ResponseFormat = WebMessageFormat.Json,
                   BodyStyle = WebMessageBodyStyle.Wrapped,
                   UriTemplate = "Update/{tokenId}/{title}")]
int Update (string tokenId, string title);

我的问题是当我们在“title”参数中传递特殊字符时,此方法尚未调用。我认为它与编码有关。 我们如何为此实现编码? 如果可能,请提供IPhone和WCF部分的编码和解码代码。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您需要对URI中的参数使用URL编码/解码。

对于.NET部分,要么使用一些自定义反序列化器机制(Web API中有这样的机制,不要记得它们在WCF 4 REST中)或者:

来自System.Web.HttpUtlity class

的UrlEncode和UrlDecode方法

对于iphone部分,请查看问题,例如 How do I URL encode a string