Правил съм плащания с Alipay много пъти, но все още често попадам в ямата, така че ще го изясня сега за справка
1. Относно задаването на публичния ключ
Уверете се, че обръщате внимание на "публичния ключ на Alipay", не попълвайте публичния ключ на приложението, иначе ще бъдете в изолация
2. Адресът на домейн името на обратното повикване
Чисто, без параметри, като: http://*****.com/notify.php, не пишете: http://*****.com/back.php?r=notify.
Това внимание е за използването на фреймуърка, трябва да подобрите URL-то, иначе директно ще използвате този с параметри, а обратният отговор ще постави "? Ако всички следващи параметри бъдат премахнати, тогава самата функция за обратно повикване определено няма да е достъпна, може да е само началната страница или нещо подобно.
3. Обърнете внимание на настройките за обратно име на домейн
Този обратен позив е приложен шлюз, а не оторизиран адрес за обратно повикване.
4. Относно параметрите, съдържащи китайски
Отговорите за Alipay се провеждат директно на китайски, без кодиране. Когато записвам дневника, го кодирам и го слагам в лога, така че директно използвам инструмента за подпис, за да проверя съдържанието на лога, и той не преминава. Така че просто използвай стандартното без кодиране в демото, не кодирай китайски. (Аз използвам PHP, ако е java китайски, трябва да го обработвам сам)
5. Последното е да се предупредиш
Уверете се, че четете параметрите ясно и не драскайте. Параметърът за ID на поръчката при обратното обаждане е "out_trade_no" не е "orderid", сумата е "total_amount", а не "пари", защото няколко платежни интерфейса се записват едновременно, така че проверката на обратното обаждане е публична функция, директно копирана без да се обръща внимание и резултатът е загуба на часове за това. Обърнете внимание на това в бъдеще.
Има и някои неща, които трябва да се отбележат, като: методът за подпис е "RSA2", кодирането е "UTF-8" и т.н., демото има стандарти, просто не го местете, освен ако не е необходимо. Ако не ти трябва демо, обърни внимание на тези.
Синхронна обработка на връщане (return_url): Това е визуално връщане, т.е. известие за скок на страница, докато плащането е успешно, Alipay скача на този адрес чрез метода get и има параметри към тази страница. Информацията за придобиване на клиенти се влияе от действията на клиента. Ако купувачът плати изцяло След завършване клиентският сървър реагира бавно, а купувачът затваря страницата, когато Alipay подаде "незабавно плащане успешно", след което уебсайтът на клиента не може да получи информация, която при нас се нарича "изпусната поръчка". Освен това, тази обработка на връщане е еднократно обаждане, тоест синхронната обработка на връщане се извиква след успешното плащане. Асинхронна обработка на връщане (notify_url): Взаимодействието с данните се осъществява чрез взаимодействие между сървъри, които трябва да бъдат поставени на сървъра (публичната мрежа) за тестване, а сървърът изпраща съобщения на страницата за асинхронна обработка на връщания, което изисква клиентската технология да обработва свързаната обработка на данни на страницата за асинхронна обработка на връщане , и след това всяка стъпка трябва да бъде върната към Alipay success (не може да съдържа други HTML скриптови езици и не може да прави прескачане на страници). Ако обработката на тази декларация е наред, тогава практически няма да има отказ на поръчки, защото Alipay ще върне информацията за поръчката 6~10 пъти в рамките на 24 часа до клиентския уебсайт, докато Alipay не постигне успех. Забележка: Синхронната обработка на връщане се влияе от действията на купувача: Ако купувачът е в действие, Alipay влиза в страницата за бърз успех на Alipay след приключване на операцията, в този момент, тъй като сървърът е съответно бавен, купувачът може да затвори тази страница, в този момент няма да можете да приемете информацията, върната от Alipay, а някои онлайн банки няма да извикат синхронното връщане на Alipay след плащане Върнете се на страницата за обработка, за да не можете да приемете данните, когато обработвате данни синхронно.
|