Memiliki program .NET yang menggunakan namespace System.Net.Main untuk mengirim email melalui SMTP.
Yang ada di situs pelanggan sehingga dari sana ia akan pergi melalui (serangkaian?) Server relai SMTP sebelum mencapai tujuannya.
Saat ini saya tidak memiliki informasi tentang infrastruktur replay / email smtp ini (dan mendapatkan informasi itu akan sulit).
Di suatu tempat di sepanjang garis tanda seru dimasukkan ke URL panjang di email sekitar 100 karakter dari awal baris.
EDIT - Sebenarnya telah menemukan sekitar 1.000 karakter di
Ini tidak terjadi pada sistem pengujian atau ratusan situs lain.
Saya merasa yakin ini ada hubungannya dengan kode pelarian untuk memecah garis panjang.
Ada yang punya ide?
Jawaban:
Terpukul dengan ini sendiri.
Jika Anda membuat pesan html tanpa carriage return di dalamnya, Anda mungkin mendapatkan kesalahan sekitar 1000 karakter.
Solusinya adalah menambahkan beberapa \ r \ n karakter sehingga setiap baris lebih kecil dari 1000 (atau 988 jika Anda tidak menghitung karakter \ r \ n).
Lihat bagian 2.1.1. Batas Panjang Garis RFC 2822 untuk rincian lebih lanjut:
sumber
Membungkus sejumlah karakter biasanya merupakan masalah klien. Jika Anda tidak melihatnya di situs lain, atau pada mesin uji, saya tidak berpikir itu kode Anda. Lihat apakah Anda tidak dapat mengetahui klien apa yang digunakan untuk menerima pesan-itu bisa berupa hal lama yang buruk yang secara otomatis membungkus sejumlah karakter.
sumber
Itu tidak terdengar seperti aplikasi .Net yang menyebabkan masalah jika masalahnya tidak terjadi di banyak situs lain di mana kode yang sama dijalankan. Apakah situs masalah di balik semacam firewall aplikasi atau perangkat anti-spam yang mungkin memantau aliran smtp? Jika demikian, mungkin ada aturan tentang pemotongan URL panjang yang sedang dipicu yang kemudian menyebabkan URL dalam email diperpendek.
sumber