WebGetAttribute 只是 Method = "GET" 的 WebInvokeAttribute 的语法糖吗?还是有根本的区别?
问问题
4853 次
2 回答
8
您立即观察到 WebGet 和 WebInvoke 非常相似,这与事实相去甚远。正如您已经说过的,WebGet 适用于 HTTP GET 动词,而 WebInvoke 可用于适用于所有其他动词(PUT、POST、DELETE 等)。
WebInvoke 中的许多参数反映了 WebGet 中的参数。BodyStyle、RequestFormat、ResponseFormat 和 UriTemplate 都适用于 WebGet 和 WebInvoke。一个区别是 WebInvoke 的“方法”参数的存在。Method 参数指定与操作对应的 HTTP 谓词,POST 为默认值。
我没有机会使用 Reflector 来查看 WebGet 和 WebInvoke 的底层,但我怀疑它们非常相似,即使它们似乎只共享 System.Attribute 作为一个共同的血统。
于 2009-07-02T06:51:21.583 回答
0
好吧,处理请求是有区别的。一般WebGet
用于GET
. 有关详细信息,请参阅我的答案。
于 2017-03-29T16:13:21.877 回答