Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
kralhakan2009 1
kralhakan2009
Vahsi Uzman 1
Vahsi Uzman
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Altın Konu Geliştirici Aracları: Resend API ile E-posta Yönetimi

Nizam-ı Alem

Asalet kana değil, duruşa bakar.
Telefon Numarası Onaylanmış Üye Turkmmo Discord Nitro Booster
Yönetici
Dergi Editörü
Turnuva
Admin
Yarışma
VIP Üye
Paylaşım
Ayın Üyesi
Katılım
15 May 2013
Konular
1,207
Mesajlar
7,321
Çözüm
6
Online süresi
2mo 16d
Reaksiyon Skoru
5,958
Altın Konu
410
Başarım Puanı
349
MmoLira
45,963
DevLira
3
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Yeniden Gönderme Özelliğiyle E-posta Gönderimi:


Node.js ve PHP RehberiResend, geliştirici dostu API'si ve yüksek teslimat oranlarıyla e-posta gönderimini bir üst seviyeye taşıyor. Projelerimize entegre etmek için ihtiyacımız olan kod:

Bu işleme başlamadan önce resend Dashboard üzerinden bir API Key almamız gerekiyor.

1775593707041.png


1- Node.Js İle Kullanım Nasıl Yapılır İlk adım olarak anlatımını yapalım arkadaşlar.

Node.js projelerinde resmi Resend SDK'sını kullanmak en temiz yoldur.

Kütüphaneyi Yüklemek İçin:

[CODE title="Bash"]npm install resend[/CODE]

Kod Örneği

[CODE lang="javascript" title="JavaScript"]import { Resend } from 'resend';

const resend = new Resend('re_senin_api_anahtarin');

async function sendEmail() {
try {
const data = await resend.emails.send({
from: 'Onboarding <onboarding@resend.dev>', // Kendi domaininizi eklediğinizde onu kullanın
to: ['alici@example.com'],
subject: 'Merhaba Dünya!',
html: '<strong>Resend Node.js üzerinden başarıyla gönderildi!</strong>',
});

console.log('E-posta gönderildi:', data);
} catch (error) {
console.error('Hata:', error);
}
}

sendEmail();[/CODE]

2- PHP İle Kullanım

PHP'de Resend'in resmi SDK'sını veya doğrudan curl yöntemini kullanabilirsiniz.

SDK ile (Tavsiye Edilen)​

Kütüphaneyi Yükleyin:

[CODE title="Bash"]composer require resend/resend-php[/CODE]

Kod Örneği:


[CODE lang="php" title="PHP"]<?php
require __DIR__ . '/vendor/autoload.php';

$resend = Resend::client('re_senin_api_anahtarin');

try {
$resend->emails->send([
'from' => 'onboarding@resend.dev',
'to' => 'alici@example.com',
'subject' => 'PHP SDK Testi',
'html' => '<strong>PHP SDK ile gönderim başarılı!</strong>',
]);
echo "E-posta alıcıya ulaştı.";
} catch (Exception $e) {
echo 'Hata: ' . $e->getMessage();
}[/CODE]

Düz PHP (Curl ile SDK'sız)​

Eğer projenizde Composer yoksa bu yöntemi kullanabilirsiniz:

[CODE lang="php" title="PHP"]<?php
$apiKey = 're_senin_api_anahtarin';

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://api.resend.com/emails');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
'from' => 'onboarding@resend.dev',
'to' => 'alici@example.com',
'subject' => 'PHP Curl Testi',
'html' => '<strong>SDK kullanmadan gönderildi!</strong>'
]));

$headers = [
'Authorization: Bearer ' . $apiKey,
'Content-Type: application/json'
];
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
curl_close($ch);

print_r($result);[/CODE]

E-posta Durumlarını Takip Etme

Resend üzerinden gönderilen e-postaların takibini alt kısımda belirttiğim olaylarla takip edebiliriz arkadaşlar.

Sent: Başarıyla gönderildi.
Delivered: Alıcının sunucusuna ulaştı.
Bounced: Alıcı sunucu e-postayı reddetti (Yanlış adres vb.).
Opened: Alıcı e-postayı açtı.
Clicked: E-posta içindeki bir linke tıklandı.

E-Postaya Resim Ekleme (Gömme)

E-postalarınızda görselleri iki farklı yöntemle kullanabilirsiniz:

Yöntem A: Harici URL Kullanmak (En Pratik Yol)​

Resminiz internette bir sunucuda veya hızlı resim servisinde yüklü ise, doğrudan <img> etiketiyle çağırabilirsiniz.

Node.js Örneği:

[CODE lang="javascript" title="JavaScript"]resend.emails.send({
from: 'onboarding@resend.dev',
to: 'alici@example.com',
subject: 'Görsel İçeren E-posta',
html: '<p>İşte harika bir resim:</p><img src="https://resend.com/static/logo.png" alt="Logo" width="200">',
});[/CODE]

Yöntem B: Content ID (CID) ile Resim Gömmek​

Resmi bir dosya olarak ekleyip (attachment), e-postanın gövdesine gömebilirsiniz. Bu yöntem, resmin alıcıda "resimleri göster" demeden açılma şansını artırır.

Node.js ile CID Kullanımı:

[CODE lang="javascript" title="JavaScript"]resend.emails.send({
from: 'onboarding@resend.dev',
to: 'alici@example.com',
subject: 'Gömülü Resim Testi',
// HTML içinde "cid:dosya_adi" şeklinde çağırıyoruz
html: '<p>Merhaba, bu bir gömülü resimdir:</p><img src="cid:profil_resmi">',
attachments: [
{
filename: 'profil.png',
content: buffer_veya_base64_verisi, // Resmin verisi
cid: 'profil_resmi', // HTML içindeki src ile eşleşmeli
},
],
});[/CODE]

PHP SDK ile CID Kullanımı:

[CODE lang="php" title="PHP"]$resend->emails->send([
'from' => 'onboarding@resend.dev',
'to' => 'alici@example.com',
'subject' => 'PHP CID Testi',
'html' => '<html><body><img src="cid:logo_id"></body></html>',
'attachments' => [
[
'content' => base64_encode(file_get_contents('logo.png')),
'filename' => 'logo.png',
'cid' => 'logo_id',
],
],
]);[/CODE]

Resend, gönderdiğiniz her e-postayı Dashboard üzerinde 48 saat boyunca görüntülenebilir bir link olarak saklar. Eğer e-postadaki bir görselin düzgün görünüp görünmediğini test etmek isterseniz, Dashboard'daki "Share email" özelliğini kullanarak önizleme yapabilirsiniz.​
 
Eline sağlık
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst