【问题标题】:How to Get a custom header value from an HttpAuthenticationContext如何从 HttpAuthenticationContext 获取自定义标头值
【发布时间】:2014-03-06 07:01:02
【问题描述】:

我正忙于实现和身份验证过滤器:

public Task AuthenticateAsync(HttpAuthenticationContext context, CancellationToken cancellationToken)
    {
        var request = context.Request;

        // Receive token from the client. Here is the example when token is in header:
        var token = request.Headers.FirstOrDefault(x => x.Key == "Token").Value.ToString();   //["Token"];

如何获取名为 token 的标头?因为上面的代码不起作用。我猜这是因为它不是标准标题。

【问题讨论】:

    标签: asp.net-mvc http asp.net-web-api httpcontext


    【解决方案1】:
    request.Headers.GetValues("token");
    

    【讨论】:

    • 等等,这就是答案?这不返回一个 IEnumerable 吗?
    • 如果您期望一个值,您可以使用以下内容:var token = request.Headers.GetValues("token").FirstOrDefault();
    【解决方案2】:

    你应该实际使用

    request.Headers.Authorization.Parameter;
    

    【讨论】:

    • 为什么应该使用这个而不是其他答案?
    猜你喜欢
    • 2016-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多