Shopifyの通貨換算
Shopifyの通貨換算. コード、キャッシュ、鮮度メタデータを含む実践ガイドです。
認証情報を公開せず、出典と観測時刻を保持してサーバー側で実装します。
手順 1
サーバー側で実行し、入力を検証してレスポンスのメタデータを保存します。
手順 2
サーバー側で実行し、入力を検証してレスポンスのメタデータを保存します。
コード例copy
export async function convertForDisplay(amount: number, from: string, to: string) {
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 },
},
);
if (!response.ok) throw new Error(`FX API returned ${response.status}`);
const data = await response.json();
return { amount: data.converted, currency: to, observedAt: data.data_updated_at };
}手順 3
- APIキーはサーバーだけに保存する。
- 通貨コードと金額を検証する。
- 成功したレスポンスをキャッシュする。
- 出典と観測時刻を表示する。
手順 4
サーバー側で実行し、入力を検証してレスポンスのメタデータを保存します。
ガイド
表示される値は参考レートであり、決済価格ではありません。