在 ASP.NET MVC 4 网站中,我使用 Web API 返回 JSON 格式的资源,包括授权操作的链接(例如,DELETE)。要创建这些链接,我在 HttpRequestMessage 上使用 GetUrlHelper() 扩展方法...
_httpRequest.GetUrlHelper().Link( routeName, routeValues );
我担心的是,从 Link() 返回的字符串是一个完全限定的 URL(它包括https://example.com/...
),而我认为我需要的只是相对 URL(只是/my/resource
)。目前,我遇到了一个服务器问题,我们的生产环境在应该是 https 时添加了 http,这不起作用。我可以单独解决这个问题,但它提出了一个问题,我应该只提供一个相对 URL 吗?如果是这样,有没有比剪掉 UrlHelper.Link() 生成的 URL 的根部分更好的方法来获取相对 URL?
编辑:在咨询了 Richardson 和 Ruby 的优秀RESTful Web Services之后,我更加坚信相对 URL 在这里是完全合适的。