Merge pull request #6 from StevanFreeborn/stevanfreeborn/fix/account-for-proxy-when-building-rss-feed
fix: account for proxy when building rss feed
This commit is contained in:
+5
-1
@@ -27,7 +27,11 @@ app
|
|||||||
.MapGet("/rss", async (HttpContext context, IPostService postService) =>
|
.MapGet("/rss", async (HttpContext context, IPostService postService) =>
|
||||||
{
|
{
|
||||||
var req = context.Request;
|
var req = context.Request;
|
||||||
var url = $"{req.Scheme}://{req.Host}{req.PathBase}";
|
|
||||||
|
var scheme = req.Headers["X-Forwarded-Proto"].FirstOrDefault() ?? req.Scheme;
|
||||||
|
var host = req.Headers["X-Forwarded-Host"].FirstOrDefault() ?? req.Host.Value;
|
||||||
|
|
||||||
|
var url = $"{scheme}://{host}{req.PathBase}";
|
||||||
|
|
||||||
var posts = await postService.GetPostsAsync();
|
var posts = await postService.GetPostsAsync();
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ namespace Blog.Tests.EndToEnd;
|
|||||||
public class RssTests : BlogTest
|
public class RssTests : BlogTest
|
||||||
{
|
{
|
||||||
[Test]
|
[Test]
|
||||||
public async Task Task_Rss_WhenFetched_ItShouldReturnRssFeed()
|
public async Task Rss_WhenFetched_ItShouldReturnRssFeed()
|
||||||
{
|
{
|
||||||
var response = await Page.APIRequest.GetAsync("/rss");
|
var response = await Page.APIRequest.GetAsync("/rss");
|
||||||
response.Status.Should().Be((int)HttpStatusCode.OK);
|
response.Status.Should().Be((int)HttpStatusCode.OK);
|
||||||
@@ -24,7 +24,7 @@ public class RssTests : BlogTest
|
|||||||
|
|
||||||
using var xmlReader = XmlReader.Create(streamReader, settings);
|
using var xmlReader = XmlReader.Create(streamReader, settings);
|
||||||
var feed = SyndicationFeed.Load(xmlReader);
|
var feed = SyndicationFeed.Load(xmlReader);
|
||||||
|
|
||||||
feed.Title.Text.Should().Be("journal");
|
feed.Title.Text.Should().Be("journal");
|
||||||
feed.Description.Text.Should().Be("A blog by Stevan Freeborn");
|
feed.Description.Text.Should().Be("A blog by Stevan Freeborn");
|
||||||
feed.Items.Should().HaveCount(2);
|
feed.Items.Should().HaveCount(2);
|
||||||
|
|||||||
Reference in New Issue
Block a user