Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- await Promise.all([...document.querySelectorAll('[data-subscription-id]')]
- .map(el => el.getAttribute('data-subscription-id'))
- .map(async (subscriptionId) => {
- try {
- const res = await fetch(`https://www.amazon.com.au/auto-deliveries/ajax/cancelSubscription?deviceType=desktop&deviceContext=web&subscriptionId=${subscriptionId}`)
- const cancelPanel = await res.text()
- const div = document.createElement('div')
- div.innerHTML = cancelPanel
- document.body.appendChild(div)
- const form = div.querySelector("form[name='cancelForm']")
- if (form) {
- const formData = new FormData(form)
- const formEntries = Object.fromEntries(formData.entries())
- await fetch(form.action, {
- method: form.method,
- headers: {
- 'Content-Type': 'application/x-www-form-urlencoded',
- },
- body: new URLSearchParams(formEntries)
- })
- div.remove()
- }
- return 'ok'
- } catch (reason) {
- return `error: ${reason}`
- }
- })
- )
Advertisement