Web Api опасный запрос

У меня есть простой контроллер Web Api, который был настроен следующим образом:

[Authorize]
 [RoutePrefix("api/messageDetail")]
 public class MessageDetailController : ApiController
 {
 [Route("{messageId}")]
 public HttpResponseMessage GetMessageDetail(string messageId)
 {
 var result = MtFacade.GetAmlResults(messageId);

 var results = new List<string>();

 results.AddRange(result.Select(item => ((AmlResults) item).Result));

 return messageId == null ? Request.CreateErrorResponse(HttpStatusCode.BadRequest, "No messageId provided") : Request.CreateResponse(HttpStatusCode.OK, results);
 }
 }
</string>

Может ли кто-нибудь помочь мне с URLEncoding передаваемого параметра, поскольку он вызывает "A потенциально опасный Reuqest" при передаче чего-то вроде этого:

servername.sometext.1.:3/0

1 ответ

Скотт Гензельман имеет отличную рецензию по этой проблеме (и некоторые решения): http://www.hanselman.com/blog/ExperimentsInWackinessAllowingPercentsAnglebracketsAndOtherNaughtyThingsInTheASPNETIISRequestURL.aspx

licensed under cc by-sa 3.0 with attribution.