1
0

Enhanced HttpContext.GetRemoteIpAddress() extension

This commit is contained in:
2023-11-22 21:55:12 +01:00
parent ca76966827
commit 1576e78686
3 changed files with 41 additions and 10 deletions

View File

@@ -113,9 +113,9 @@ namespace UnitTests.AspNetCore.Extensions
}
[DataTestMethod]
[DataRow("X-Forwarded-For")]
[DataRow("Cf-Connecting-Ip")]
[DataRow("X-Real-IP")]
[DataRow("CF-Connecting-IP")]
[DataRow("X-Forwarded-For")]
public void ShouldReturnDefaultHeader(string headerName)
{
// arrange
@@ -170,6 +170,24 @@ namespace UnitTests.AspNetCore.Extensions
Assert.AreEqual(remote, result);
}
[TestMethod]
public void ShouldReturnFirstAddressOnMultipleProxies()
{
// arrange
remote = IPAddress.Parse("1.2.3.4");
var header = IPAddress.Parse("5.6.7.8");
requestHeaders.Add("X-Forwarded-For", $"{header}, 111.222.111.222");
var context = GetContext();
// act
var result = context.GetRemoteIpAddress();
// assert
Assert.AreNotEqual(remote, result);
Assert.AreEqual(header, result);
}
#endregion RemoteAddres
#region Local Request