Skip to content

Commit 8541709

Browse files
authored
Trimmed trailing = from UrlSafeBase64-encoded Node IDs (#9034)
1 parent 1a45997 commit 8541709

File tree

3 files changed

+5
-1
lines changed

3 files changed

+5
-1
lines changed

src/HotChocolate/Core/src/Types/Types/Relay/Serialization/DefaultNodeIdSerializer.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,8 @@ static string FormatBase64(
216216
span[i] = (byte)'_';
217217
}
218218
}
219+
220+
span = span.TrimEnd((byte)'=');
219221
}
220222

221223
return ToString(span);

src/HotChocolate/Core/src/Types/Types/Relay/Serialization/OptimizedNodeIdSerializer.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -472,6 +472,8 @@ private string FormatBase64(Span<byte> span, int written, bool urlSafeBase64, re
472472
span[i] = (byte)'_';
473473
}
474474
}
475+
476+
span = span.TrimEnd((byte)'=');
475477
}
476478

477479
return OptimizedNodeIdSerializer.ToString(span);

src/HotChocolate/Core/test/Types.Tests/Types/Relay/DefaultNodeIdSerializerTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public void Format_Small_StringId_UrlSafe()
4848
var value = Encoding.UTF8.GetString(Convert.FromBase64String("Rm9vOkberW9vVHlwZe+/vSs="));
4949
var id = serializer.Format("Foo", value);
5050

51-
Assert.Equal("Rm9vCmRGb286Rt6tb29UeXBl77-9Kw==", id);
51+
Assert.Equal("Rm9vCmRGb286Rt6tb29UeXBl77-9Kw", id);
5252
}
5353

5454
[Fact]

0 commit comments

Comments
 (0)