Returns the RSS feed associated with the given URL
Go to file
Marcus Noble 8cf51e1004
Added support for atom feeds
Signed-off-by: Marcus Noble <github@marcusnoble.co.uk>
2022-08-08 07:05:03 +01:00
.dockerignore Initial commit 2021-03-17 09:13:24 +00:00
.gitignore Added webpage 2021-03-21 08:42:56 +00:00
Dockerfile Added webpage 2021-03-21 08:42:56 +00:00
go.mod Added webpage 2021-03-21 08:42:56 +00:00
go.sum Initial release 2021-03-17 09:51:00 +00:00
index.html Switch to develop version of milligram 2021-03-21 09:25:36 +00:00
LICENSE Initial commit 2021-03-17 09:13:24 +00:00
logo.png Added logo to readme 2021-03-21 09:45:25 +00:00
main.go Added support for atom feeds 2022-08-08 07:05:03 +01:00
Makefile Added release task 2021-03-21 08:46:46 +00:00
README.md Merge branch 'master' of https://git.cluster.fun/AverageMarcus/feed-fetcher 2021-03-21 09:45:35 +00:00

feed-fetcher

Returns the RSS feed associated with the given URL

Available at https://feed-fetcher.cluster.fun/

Usage

GET https://feed-fetcher.cluster.fun/?url=${URL_TO_CHECK}

Example:

curl -v http://localhost:8000/\?url\=https://marcusnoble.co.uk/
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 8000 (#0)
> GET /?url=https://marcusnoble.co.uk/ HTTP/1.1
> Host: localhost:8000
> User-Agent: curl/7.64.1
> Accept: */*
>
< HTTP/1.1 307 Temporary Redirect
< Date: Wed, 17 Mar 2021 09:44:32 GMT
< Content-Type: text/plain; charset=utf-8
< Content-Length: 18
< Location: https://marcusnoble.co.uk/feed.xml
<
* Connection #0 to host localhost left intact
Temporary Redirect* Closing connection 0

Possible status code responses

  • 300 - Multiple possible feeds found on page (the first is returned on the Location header)
  • 301 - URL provided was already a valid feed URL
  • 307 - Feed URL found on provided page
  • 400 - No URL provided
  • 404 - No feed URL found on provided webpage
  • 500 - Server error while trying to fetch feed

Building from source

With Docker:

make docker-build

Standalone:

make build

Contributing

If you find a bug or have an idea for a new feature please raise an issue to discuss it.

Pull requests are welcomed but please try and follow similar code style as the rest of the project and ensure all tests and code checkers are passing.

Thank you 💛

License

See LICENSE