我想知道是否有人遇到了这个问题,并有一个答案或指针。我实现了IClientMessageInspector,以便在客户机上向我的soap消息添加一个头。因此,在BeforeSendREquest中,我调用了MessageHeader.CreateHeader。这似乎是可行的,因为我在Fiddler中看到了集合中带有标头的消息。在服务端,我有一个自定义的authenticationManager。当服务调用进入实现时,我看不到我插入的头。我有一种感觉,ServiceModel堆栈在反序列化期间跳过了我的头,但不确定。此外,如果这是真实发生的事情,我也不确定如何解决这个问题。也许在服务端实现IClientMessageInspector的等价物?
任何想法/指针都会很有帮助。
发布于 2010-12-21 18:56:25
在服务器端WCF代码中,为了对来自客户端(由IClientMessageInspector插入)的SOAP标头进行操作,我使用了IDispatchMessageInspector的实现。在它的AfterReceiveRequest()方法中,我使用request.Headers.FindHeader()来查看是否存在预期的标头。
https://stackoverflow.com/questions/4495910
复制相似问题