RehberlerRehberler

React ile para birimi dönüştürücü oluşturma

React ile para birimi dönüştürücü oluşturma. Kod, önbellek ve güncellik meta verisi içeren uygulamalı kılavuz.

20 Eyl 2026 · 7 dakikalık okuma

Kimlik bilgilerini açığa çıkarmadan sunucuda uygulayın; kaynak ve gözlem zamanını koruyun.

  • API anahtarını sunucuda tutun.
  • Para birimi kodlarını ve tutarları doğrulayın.
  • Başarılı yanıtları önbelleğe alın.
  • Kaynağı ve gözlem zamanını gösterin.

Adım 1

Sunucuda çalıştırın, girdileri doğrulayın ve yanıt meta verisini saklayın.

Kod örneği
import { NextRequest, NextResponse } from "next/server";export async function GET(request: NextRequest) {  const { searchParams } = request.nextUrl;  const from = searchParams.get("from")?.toUpperCase();  const to = searchParams.get("to")?.toUpperCase();  const amount = Number(searchParams.get("amount"));  if (!from || !to || !Number.isFinite(amount) || amount < 0) {    return NextResponse.json({ error: "invalid_input" }, { status: 400 });  }  const response = await fetch(    `https://api.exchangerate.dev/v1/convert/${from}/${to}/${amount}`,    {      headers: { Authorization: `Bearer ${process.env.EXCHANGERATE_API_KEY}` },      signal: AbortSignal.timeout(5000),      next: { revalidate: 60 },    },  );  return NextResponse.json(await response.json(), { status: response.status });}

Adım 2

Kod örneği
"use client";import { FormEvent, useState } from "react";type ConversionResult = {  converted: string;  source: string;  data_updated_at: string;};export function CurrencyConverter() {  const [amount, setAmount] = useState("100");  const [result, setResult] = useState<ConversionResult | null>(null);  const [error, setError] = useState("");  const [loading, setLoading] = useState(false);  async function submit(event: FormEvent) {    event.preventDefault();    setLoading(true); setError("");    try {      const params = new URLSearchParams({ from: "USD", to: "EUR", amount });      const response = await fetch(`/api/convert?${params}`);      const body = await response.json();      if (!response.ok) throw new Error(body.error ?? "conversion_failed");      setResult(body);    } catch (caught) {      setError(caught instanceof Error ? caught.message : "conversion_failed");    } finally { setLoading(false); }  }  return <form onSubmit={submit}>    <input value={amount} onChange={(event) => setAmount(event.target.value)} inputMode="decimal" />    <button disabled={loading}>{loading ? "Converting…" : "Convert"}</button>    {error && <p role="alert">{error}</p>}    {result && <output>{result.converted} EUR · {result.source} · {result.data_updated_at}</output>}  </form>;}

Adım 3

  • API anahtarını sunucuda tutun.
  • Para birimi kodlarını ve tutarları doğrulayın.
  • Başarılı yanıtları önbelleğe alın.
  • Kaynağı ve gözlem zamanını gösterin.
Kılavuz

Bu kurlar gösterge niteliğindedir, takas fiyatı değildir.

Sorular

React ile para birimi dönüştürücü oluşturma

Belgelenmiş JSON sözleşmesiyle para birimi dönüşümü ve gösterge kurları ekler.

Okumaya devam edin

Ücretsiz bir API anahtarıyla başlayın

Ücretsiz planda ayda 5.000 istek. Kredi kartı gerekmez.

Ücretsiz anahtar alın