HTTP
Make CORS-free HTTP requests from plugins using a standard fetch API.
HTTP API for plugins
Usage
import type { NuclearPluginAPI } from '@nuclearplayer/plugin-sdk';
export default {
async onEnable(api: NuclearPluginAPI) {
const response = await api.Http.fetch(
'https://api.example.com/tracks?q=radiohead'
);
if (response.ok) {
const data = await response.json();
api.Logger.info(`Found ${data.results.length} tracks`);
}
},
};import type { NuclearPluginAPI } from '@nuclearplayer/plugin-sdk';
export default {
async onEnable(api: NuclearPluginAPI) {
const response = await api.Http.fetch('https://api.example.com/scrobble', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
artist: 'Radiohead',
track: 'Paranoid Android',
}),
});
if (!response.ok) {
api.Logger.error(`Scrobble failed: ${response.status}`);
}
},
};How it works
Limitations
Reference
Last updated