我正在构建一个与 Web-Api 通信的 UWP 应用程序。在某些时候,我将 url 中的字符串发送到可由用户操作的 Web-Api。因此,该字符串可能包含可能对 Web-Api 造成不良影响的字符。
例如:
这是我的用户控制器
[Route("api/user/{uid}")]
public User GetUser(string uid)
{
return userRepository.GetByUid(uid);
}
为了这个例子,我们假设用户可以输入uid
手动在文本框中。现在如果他输入
../vipuser
他可以访问 VipUserController。因为../
上升一级。
我搜索了一下发现这篇文章 https://stackoverflow.com/questions/33171270/web-api-2-routing-issue-with-special-characters-in-url建议使用System.Web.UrlEncodeUnicode
and System.Web.UrlDecode
.
但由于 UWP 应用不包括System.Web
我想知道是否有此方法的替代方法,我可以将其用于 UWP 应用程序?
Uri.EscapeDataString()
and Uri.UnescapeDataString()
会成功的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)