2011-01-28 50 views
0

我使用WCF/.NET 4.0/IIS7.5 /服务器2008REST和电子邮件地址

我想这样做:

http://localhost/users/email/[email protected]

但是,它显示了像这样的服务器:

“法案”

的 “@microsoft” 被删除。

我知道at符号是一种特殊情况。 有没有一个优雅的方式来做到这一点?我可以指示 我的WebGet方法,这种方法将采取 一个特殊的符号,请编码它?

[WebGet(UriTemplate = "/email/{email}")] 
    [WebDispatchFormatter] 
    [OperationContract] 
    UserDto GetUserByEmail(string email); 

如何使用WCF REST操纵电子邮件地址?

谢谢。

回答

2

在URI中使用特殊字符时,必须对URI进行编码,然后在服务端进行解码。由于这是.NET,因此可以使用编码/解码位进行URL编码。

+0

如果邮件地址是从iPhone应用程序发出的CURL字符串,我该如何编码电子邮件地址?我是否需要告诉客户端应用程序开发人员对电子邮件字符串进行编码? – 2011-01-28 15:39:26

0

您可能需要转义@符号。尝试使用http://localhost/users/email/bill%40microsoft.com

+0

我想我可能已经很快选择了“回答”。它仍然截断了“%40microsoft.com”,只是返回bill ...嗯 – 2011-01-28 21:19:05

相关问题