Uri Rest资源名称格式化

时间:2016-06-24 15:47:58

标签: c# rest url uri dotnet-httpclient

我有资源我正试图用GET opertaion检索

资源看起来像这样,resousce由用户名定义 其中可以包含域信息。即var userName = @"Domain\myname" 我有问题重新格式化Uri

我试过的是 1. var resource = string.Format("/user/{0}/order", Uri.EscapeDataString(userName ));

  1. var resource = string.Format("/user/{0}/order", HttpUtility.UrlEncode(userName ));
  2. 我正在使用.Net HttpClient向后端发送数据我收到一条错误,指出找不到终点。当我在调试器中查看调用时,我看到了端点 正试图访问:user/Domain/myname/order

    可以做什么,因此资源参数可以包含域“\'个字符

1 个答案:

答案 0 :(得分:1)

我不是C#家伙,所以我不知道The Answer [tm],但我可以告诉你一些要寻找的东西

1)String.Format可能是工具包中的错误工具。您没有尝试格式化字符串,而是尝试格式化URI。所以你应该寻找像UriTemplate

这样的东西

2)你应该确保你知道正确的结果是什么。这是由URI specification的第一个附录定义的。