ஆஸ்ட்ரோ தொடர்பு படிவ ஒருங்கிணைப்பு (நிலை மற்றும் SSR)
மின்னஞ்சல் சேவையகங்கள் அல்லது தரவுத்தளங்களை பராமரிக்காமல் Lugatu எண்ட் பாயிண்ட்களைப் பயன்படுத்தி ஆஸ்ட்ரோ நிலையான தளங்கள் (SSG) மற்றும் ஹைப்ரிட் சர்வர் வழிகளில் தொடர்பு படிவங்களை எவ்வாறு சேர்ப்பது.
1. தூய நிலையான தளம் (SSG) படிவம் உட்செலுத்துதல்
ஆஸ்ட்ரோ இயல்புநிலையாக பூஜ்ஜிய-ஜாவாஸ்கிரிப்ட்டுக்கு பிரபலமானது. Lugatu மூலம், நிலையான HTML படிவங்கள் மற்றும் இலகுரக கிளையன்ட்-பக்கம் பெறுதல் மூலம் விசாரணைகளைச் சேகரிக்கும் போது, உங்கள் ஆஸ்ட்ரோ தளத்தை 100% நிலையானதாக வைத்திருக்கலாம்.
---
// src/pages/contact.astro
---
<form id="astro-contact-form" class="space-y-4 max-w-md">
<div>
<label class="block text-sm font-semibold mb-1">Your Name</label>
<input type="text" name="name" required class="w-full border rounded-xl p-2.5" />
</div>
<div>
<label class="block text-sm font-semibold mb-1">Email Address</label>
<input type="email" name="email" required class="w-full border rounded-xl p-2.5" />
</div>
<div>
<label class="block text-sm font-semibold mb-1">Message</label>
<textarea name="message" rows="4" required class="w-full border rounded-xl p-2.5"></textarea>
</div>
<input type="text" name="_gotcha" style="display:none !important" tabindex="-1" autocomplete="off" />
<button type="submit" class="btn-primary-editorial py-2.5 px-6">Send Message</button>
</form>
<script>
const form = document.getElementById('astro-contact-form') as HTMLFormElement;
form?.addEventListener('submit', async (e) => {
e.preventDefault();
const formData = new FormData(form);
const payload = {
fields: {
name: formData.get('name'),
email: formData.get('email'),
message: formData.get('message'),
},
honeypot: formData.get('_gotcha') || '',
};
const res = await fetch('https://www.lugatu.com/api/v1/public/forms/YOUR_PUBLIC_FORM_ID/submissions', {
method: 'POST',
headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' },
body: JSON.stringify(payload),
});
if (res.ok) {
alert('Thank you! Message delivered.');
form.reset();
}
});
</script>
2. சர்வர் ஏபிஐ விசையுடன் ஆஸ்ட்ரோ ஹைப்ரிட் / எஸ்எஸ்ஆர் ஏபிஐ ரூட்
கிளவுட்ஃப்ளேர் பக்கங்கள், நெட்லிஃபை அல்லது வெர்செல் ஆகியவற்றில் உங்கள் ஆஸ்ட்ரோ தளம் ஹைப்ரிட் அல்லது எஸ்எஸ்ஆர் பயன்முறையில் இயங்கினால், ஆஸ்ட்ரோ ஏபிஐ வழி மூலம் சமர்ப்பிப்புகளைப் பாதுகாப்பாக அனுப்பவும்.
import type { APIRoute } from 'astro';
export const POST: APIRoute = async ({ request }) => {
const data = await request.formData();
const fields = {
name: data.get('name')?.toString(),
email: data.get('email')?.toString(),
message: data.get('message')?.toString(),
};
const res = await fetch(`https://www.lugatu.com/api/v1/forms/${import.meta.env.LUGATU_FORM_ID}/submissions`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${import.meta.env.LUGATU_API_KEY}`,
'Content-Type': 'application/json',
'Idempotency-Key': crypto.randomUUID(),
},
body: JSON.stringify({ fields }),
});
return new Response(JSON.stringify({ success: res.ok }), {
status: res.status,
headers: { 'Content-Type': 'application/json' },
});
};
பாதுகாப்பு மற்றும் அங்கீகாரம் மாறாதது
பாதுகாப்பு அறிவுறுத்தல்: ஆஸ்ட்ரோ கிளையன்ட் பக்க ஸ்கிரிப்ட் குறிச்சொற்களில் import.meta.env.LUGATU_API_KEY ஐ ஒருபோதும் வெளிப்படுத்த வேண்டாம். கிளையண்ட் ஸ்கிரிப்டுகள் பொது இறுதிப் புள்ளியை மட்டுமே பயன்படுத்த வேண்டும்.
சரிசெய்தல் & பொதுவான உட்செலுத்துதல் பிழைகள்
உங்கள் ஹோஸ்டிங் டாஷ்போர்டில் உங்கள் உற்பத்தி சூழல் மாறிகள் (LUGATU_FORM_ID மற்றும் LUGATU_API_KEY) கட்டமைக்கப்பட்டுள்ளதை உறுதிசெய்யவும்.
அடிக்கடி கேட்கப்படும் கேள்விகள்
எனது Astro தளத்தை Lugatu உடன் 100% நிலையானதாக வைத்திருக்க முடியுமா?
ஆம். Pure static (SSG) தளங்கள் உங்கள் ஹோஸ்டிங் வழங்குநரின் எந்த சேவையகக் கணக்கீடும் தேவையில்லாமல் நேரடியாக Lugatu பொது இறுதிப் புள்ளியில் சமர்ப்பிக்கின்றன.
உங்கள் படிவத்தின் இறுதிப்புள்ளியை உருவாக்கத் தயாரா?
நொடிகளில் இலவசமாகத் தொடங்குங்கள். கடன் அட்டை தேவையில்லை.