Add default API CORS HTTP Headers (#6659)

* Add default API CORS HTTP Headers
To allow interacting with our APIs from a JavaScript application.
So far limited to the APIs: Greader, User queries
Fix https://github.com/FreshRSS/FreshRSS/discussions/6654#discussioncomment-10131144

* Early abort for OPTIONS requests

* Move a bit OPTIONS test

* No content!

* More cleaning
This commit is contained in:
Alexandre Alapetite authored and GitHub committed 2024-07-28 14:19:40 +02:00
1 parent 5267db88ab
commit 47a3e15edc
2 files changed
+23

No files matched your search

+9
View File
@@ -159,6 +159,15 @@ if ($query->getName() != '') {
}
FreshRSS_Context::systemConf()->allow_anonymous = true;
header('Access-Control-Allow-Methods: GET');
header('Access-Control-Allow-Origin: *');
header('Access-Control-Max-Age: 600');
header('Cache-Control: public, max-age=60');
if (($_SERVER['REQUEST_METHOD'] ?? '') === 'OPTIONS') {
header('HTTP/1.1 204 No Content');
exit();
}
if (in_array($format, ['rss', 'atom'], true)) {
header('Content-Type: application/rss+xml; charset=utf-8');
$view->_layout(null);