How to Render RSS Feeds in Elixir Phoenix: Difference between revisions

From ElixirBlocks
Jump to: navigation, search
No edit summary
No edit summary
Line 15: Line 15:
Below is a LiveView example that uses the above package to render contents of an RSS feed to the browser.
Below is a LiveView example that uses the above package to render contents of an RSS feed to the browser.


The raw() method comes with Elixir Phoenix and is used to sanitize HTML.  
The raw() method comes bundled with Elixir Phoenix and is used to sanitize HTML.  


==Example==
==Example==

Revision as of 19:16, 5 December 2023

This is an example of how to capture and display an RSS feed in Phoenix.


This document assumes that you understand the basics of Liveview. This includes:


To use this example you must first install the Feedex RSS package.

Below is a LiveView example that uses the above package to render contents of an RSS feed to the browser.

The raw() method comes bundled with Elixir Phoenix and is used to sanitize HTML.

Example


defmodule AppWeb.PageLive do
  use AppWeb, :live_view

  def mount(_params, _sesion, socket) do
    {:ok, socket}
  end

  def render(assigns) do
    {:ok, feed} = Feedex.fetch_and_parse("https://podcastfeeds.nbcnews.com/RPWEjhKq")

    [head | tail] = feed.entries
    IO.inspect(head.content)

    ~H"""
    <%= raw(head.content) %>
    """
  end
end