Try returning json via SK
This commit is contained in:
@@ -45,16 +45,16 @@
|
||||
})
|
||||
const result: FormStatus = await req.json()
|
||||
formStatus = result
|
||||
console.log(result)
|
||||
console.log('SK api response:', result)
|
||||
|
||||
// // If successful
|
||||
// if (formStatus.success) {
|
||||
// sendEvent('newsletterSubscribe')
|
||||
// } else {
|
||||
// // Hide message for errors
|
||||
// clearTimeout(formMessageTimeout)
|
||||
// formMessageTimeout = requestAnimationFrame(() => setTimeout(() => formStatus = null, 4000))
|
||||
// }
|
||||
// If successful
|
||||
if (formStatus.success) {
|
||||
sendEvent('newsletterSubscribe')
|
||||
} else {
|
||||
// Hide message for errors
|
||||
clearTimeout(formMessageTimeout)
|
||||
formMessageTimeout = requestAnimationFrame(() => setTimeout(() => formStatus = null, 4000))
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { NEWSLETTER_API_TOKEN, NEWSLETTER_LIST_ID } from '$env/static/private'
|
||||
import type { RequestHandler } from './$types'
|
||||
import { error } from '@sveltejs/kit'
|
||||
import { error, json } from '@sveltejs/kit'
|
||||
|
||||
export const POST = (async ({ request, fetch }) => {
|
||||
const data: { email: string } = await request.json()
|
||||
@@ -15,28 +15,27 @@ export const POST = (async ({ request, fetch }) => {
|
||||
throw error(400, { message: 'INVALID_EMAIL' })
|
||||
}
|
||||
|
||||
return new Response(JSON.stringify({
|
||||
email,
|
||||
}))
|
||||
// return json(email)
|
||||
|
||||
// // Newsletter API request
|
||||
// const req = await fetch(`https://emailoctopus.com/api/1.6/lists/${NEWSLETTER_LIST_ID}/contacts`, {
|
||||
// method: 'POST',
|
||||
// headers: { 'Content-Type': 'application/json' },
|
||||
// body: JSON.stringify({
|
||||
// api_key: NEWSLETTER_API_TOKEN,
|
||||
// email_address: email,
|
||||
// })
|
||||
// })
|
||||
// const res = await req.json()
|
||||
// Newsletter API request
|
||||
const req = await fetch(`https://emailoctopus.com/api/1.6/lists/${NEWSLETTER_LIST_ID}/contacts`, {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({
|
||||
api_key: NEWSLETTER_API_TOKEN,
|
||||
email_address: email,
|
||||
})
|
||||
})
|
||||
const res = await req.json()
|
||||
console.log('server API response:', res)
|
||||
|
||||
// // Other error
|
||||
// if (res && res.status !== 'PENDING') {
|
||||
// throw error(400, { message: res.error.code })
|
||||
// }
|
||||
// Other error
|
||||
if (res && res.status !== 'PENDING') {
|
||||
throw error(400, { message: res.error.code })
|
||||
}
|
||||
|
||||
// return new Response(JSON.stringify({
|
||||
// success: true,
|
||||
// message: res.status,
|
||||
// }))
|
||||
return json({
|
||||
success: true,
|
||||
message: res.status,
|
||||
})
|
||||
}) satisfies RequestHandler
|
||||
Reference in New Issue
Block a user