2012-09-21 13 views
8

Paypal'ın iade ettiği Token ID (yani: EC-XXXXXXXXXXXXXXXXX), her zaman benzersiz mi? Şüphe duyarım? Ama yaptığım şey, bu işlemin zaten işlenip işlenmediğini doğrulamak için onu işlem tablomuza ekliyorum.Paypal'ın Jeton Kimliği Benzersiz mi?

İşlem Kimliği'nin de işe yarayabileceğini biliyorum, ancak önce GetExpressCheckoutDetails veya DoExpressCheckout gibi PayPal API yöntemlerini kullanmadan önce Token Kimliği'nin döndürülmesi.

Lütfen kendi deneyimlerinizden en iyi olduğunu düşündüğünüz ürünü bana bildirin.

Teşekkür

+1

İşlemi tanımlamak için İşlem Kimliği'ni kullanmak istediğiniz gibi görünüyor. Sadece isminden, Token muhtemelen bir güvenlik için kullanılmamış ve benzersiz olması garanti değildir. – bdares

cevap

7

Token benzersizdir, ancak yalnızca oturumu temsil eder, bu nedenle ilk önce iade edilir. Tam bir işlemi göstermez ve bu amaçla saklamamalısınız. PayPal'ın, iadesi için (vb. En azından gördüğüm) işlemi tanımlamak için kullanmaması nedeniyle, onu gelecekte de kullanmak için saklamamı tavsiye etmem.

Yalnızca SetExpressCheckout -> GetExpressCheckoutDetails -> DoExpressCheckoutPayment'dan gelen gerçek çıkış akışını yönetmek için Token'ı kullanmanızı ve sonra da "işlem tamamlandı" göstergesini DoExpressCheckoutPayment'dan döndürülen TransactionID'yi saklamanızı öneririz. EChecks paranı hesabınıza hemen vermediğinden muhtemelen PaymentStatus iadesini de kontrol etmelisiniz.

+0

Cevabınız için teşekkürler, oldukça benzer düşündüm. Kullandığımın nedeni birden fazla yenileme denemesini engelleyebildi, bunun iyi bir fikir olduğunu mu düşünüyorsun? – Zubair1

+0

'örneğin:' Kullanıcı onayla düğmesine bastı ve bir sonraki sayfada rezervasyon başarılı oldu, rezervasyon ve işlem bilgileri başarıyla kaydedildi. Ancak, kullanıcı sayfayı yeniliyorsa, mysql'de Benzersiz bir indeksle ayarlanmış sütuna sahip olduğum gibi İşlem Kimliği hatası gibi bazı hatalara neden olur. Rezervasyon verisini, birincil anahtarı, rezervasyon verilerinin MySQL'e eklenmesi sırasında oluşturulan benzersiz bir rezervasyon kodu olduğu için ekleyecektir. – Zubair1

+0

Sanırım bunun üstesinden gelmek için iyi bir fikir olmadığını farkettim. Bu yüzden benim için karışıklığı temizlediğiniz için teşekkürler. – Zubair1

0

İşlem kimliği işlem için benzersizdir. Belirteç Kimliği, İşlem Kimliği'nin doğru olup olmadığını kontrol etmek için oluşturulan bir sayıdır.

İlgili konular