about summary refs log tree commit diff
path: root/Tests/LibMatrix.HomeserverEmulator/Services/TokenService.cs
blob: 1f59342e8a754e2775663c7079277bfefb04f3cc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
namespace LibMatrix.HomeserverEmulator.Services;

public class TokenService{
    public string? GetAccessToken(HttpContext ctx) {
        //qry
        if (ctx.Request.Query.TryGetValue("access_token", out var token)) {
            return token;
        }
        //header
        if (ctx.Request.Headers.TryGetValue("Authorization", out var auth)) {
            var parts = auth.ToString().Split(' ');
            if (parts is ["Bearer", _]) {
                return parts[1];
            }
        }
        return null;
    }

    public string? GenerateServerName(HttpContext ctx) {
        return ctx.Request.Host.ToString();
    }
}