blob: 792264a74d18413a7e0337e8451320b1f427dcdb (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
using System.Net.Http.Json;
using LibMatrix.Abstractions;
namespace LibMatrix.Federation.Extensions;
public static class XMatrixAuthorizationSchemeExtensions {
public static HttpRequestMessage ToSignedHttpRequestMessage(this XMatrixAuthorizationScheme.XMatrixRequestSignature requestSignature, VersionedHomeserverPrivateKey privateKey) {
var signature = requestSignature.Sign(privateKey);
var requestMessage = new HttpRequestMessage {
Method = new HttpMethod(requestSignature.Method),
RequestUri = new Uri(requestSignature.Uri, UriKind.Relative)
};
if (requestSignature.Content != null) {
requestMessage.Content = JsonContent.Create(requestSignature.Content);
}
return requestMessage;
}
}
|