我有一个WCF服务,它支持basicHttpBinding和webHttpBinding。当客户端成功登录时,服务器将生成一个令牌,供客户端在稍后的所有请求中传递给服务器。问题是客户端如何将令牌传递给服务器?我不想在每个Web方法上添加额外的参数来保存令牌。
答案 0 :(得分:18)
通常,执行此类操作的最佳方法是在WCF标头中传递此类“元信息”。您可以轻松地创建一个消息检查器来扩展WCF(它真的不那么可怕而且难以做到!),它会将令牌注入到来自客户端的每个传出请求中,并从头中检索它并在服务器端验证它。 / p>
有很多相当不错的博客文章向您展示如何创建消息检查器:
查看要实施的两个相关接口:
BeforeSendRequest
和AfterReceiveReply
消息要实施AfterReceiveRequest
和BeforeSendReply
方法可以实施