我正在为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部分的编码和解码代码。 提前谢谢。
答案 0 :(得分:0)
您需要对URI中的参数使用URL编码/解码。
对于.NET部分,要么使用一些自定义反序列化器机制(Web API中有这样的机制,不要记得它们在WCF 4 REST中)或者:
的UrlEncode和UrlDecode方法对于iphone部分,请查看问题,例如 How do I URL encode a string