【发布时间】:2014-12-01 20:11:23
【问题描述】:
我从客户端进行 WCF REST api 调用。为此,我使用了WebChannelFactory<IRestApi> 类型的专用对象,其中IRestApi 是一个ServiceContract。
然后,我可以通过我使用的通道(由CreateChannel() 创建)调用 IRestApi 的方法。
我的问题是:我可以向这个通道添加常量参数(在我的情况下是版本号),这样我就不必在每次调用中一遍又一遍地传递它吗?
【问题讨论】:
-
不能将
Version属性添加到IRestApi? -
@DavidG,我不确定你的意思。 IRestApi 是定义客户端和服务器之间的休息合同的接口。 IRestApi 有很多方法。我可以为这些方法中的每一个添加一个“版本”参数,但我想也许我有更好、更优雅的方法来做到这一点,因为版本属性是恒定的(所以我想将它加载到通道中).. .
-
您是否通过 HTTP 访问 API?你可以在那里添加一个标题。
-
@DavidG,你是对的,我考虑过这个选项,它应该可以工作。我不这样做,因为有时我需要能够直接从浏览器调用此服务(而且我无法在浏览器的调用中添加标头......)
-
@thecoshman 你能不能在低视角、零投票、半岁的问题上将“rest”大量编辑成“REST”?
标签: c# rest wcf-rest servicecontract