gpt4 book ai didi

c# - 在 WCF REST 端点上使用 C# 属性进行身份验证/授权

转载 作者:太空宇宙 更新时间:2023-11-03 22:57:30 25 4
gpt4 key购买 nike

对于我的休息服务上的特定端点,我需要检查 token ,而不是在每个端点上都这样做:

IncomingWebRequestContext woc = WebOperationContext.Current.IncomingRequest;    
string tok = woc.Headers["tok"];
// validate etc

我想在端点的方法上添加一个属性并执行如下操作:

[Restricted]
public Blog Get(string id)

并使端点返回自定义响应,我可以像这样获取 header 和控制方法返回值吗?

最佳答案

有两种方法:

  • 您可以使用外部工具,例如 实现aspect oriented programming .这意味着您的属性(现在使用标准 .NET 的纯元数据)成为一个方面并执行代码。这是通过编写 IL 代码的后编译器实现的。很酷的东西,但要花钱。

  • 你自己写IEndpointBehaviorapply a dispatch behavior到您的服务端点,这又会添加一个 IDispatchMessageInspector可以检查消息(例如标题)并对发送到端点的所有消息采取相应的行动。它还可以检查您的端点操作,它们是否具有这样的属性集并仅对具有它的那些操作。

关于c# - 在 WCF REST 端点上使用 C# 属性进行身份验证/授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44700808/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com