I’m generating QR codes as an SVG dynamically. The SVG is shown right away so every time a new SVG is created, I just replace the existing one. The problem I’m encountering is that even after replacing the old SVG it seems to be cached somewhere and serves the same SVG no matter what. How can I go about creating an SVG and saving it locally then serving it properly?
def qr_code(conn, %{"id" => id}) do
img_path = Application.app_dir(:EOS, "priv/static/images/mysvg.svg")
user = conn.assigns.current_user |> Repo.preload(organization: :wells)
well = App.get_well!(id)
File.rm(img_path)
well.well_code
|> QRCode.create(:high)
|> Result.and_then(&QRCode.Svg.save_as(&1, img_path))
conn = put_layout(conn, false)
render(conn, "qr_code.html", img_path: img_path)
end```
<img src="<%= Routes.static_url(EOSWeb.Endpoint, "/images/mysvg.svg") %>">```