希望大神给我描绘一下整个支付的过程。
1 客户端向业务服务端提交订单,业务服务方生成一个订单号
2 客户端根据订单号生成支付宝所需要的参数,向支付宝的支付接口提交
3 支付宝的支付接口返回同步数据。
4 支付宝服务端请求回调函数,这个回调函数是在业务服务方的,这个请求是异步的。
5 客户端根据用户订单号来去业务服务方确认是否已经支付成功。
这是我找资料看到的过程 ,我想知道在这些环节服务端都干了什么,是怎么去做到的。
毕业论文催的紧,论文项目涉及的支付环节从来没做过,APP客户端服务端都得自己来,希望各位大神指点一下!谢谢了!
回复内容:
希望大神给我描绘一下整个支付的过程。
1 客户端向业务服务端提交订单,业务服务方生成一个订单号
2 客户端根据订单号生成支付宝所需要的参数,向支付宝的支付接口提交
3 支付宝的支付接口返回同步数据。
4 支付宝服务端请求回调函数,这个回调函数是在业务服务方的,这个请求是异步的。
5 客户端根据用户订单号来去业务服务方确认是否已经支付成功。
这是我找资料看到的过程 ,我想知道在这些环节服务端都干了什么,是怎么去做到的。
毕业论文催的紧,论文项目涉及的支付环节从来没做过,APP客户端服务端都得自己来,希望各位大神指点一下!谢谢了!
三两句话就说得清楚了。
1.客户端选购商品,提交商品信息到服务端(Client->[{商品1,1件,¥100},{商品1,1件,¥100}]->Server)
2.服务端订单入库生成订单号反馈给客户端(Server->[2333333,¥200]->Client)
3.调用支付宝SDK携带一些参数(23333333,¥200, http://domain/payment_notify )(SDK干了什么只有支付宝知道)
4.用户支付完成,支付宝服务器通知应用服务器(HTTP访问http://domain/payment_notify),服务器做验证判断支付是否成功。
5.支付完成后,回到APP,APP收到通知,访问服务器接口验证是否成功。
服务端要做的事:1.生成订单号,处理业务逻辑;2.根据支付宝服务端发过来的异步请求处理你自己的逻辑,然后给支付宝返回success,不然支付宝会重复发送多次(好像是6次)
服务端的作用主要是异步接收支付宝发送的反馈,并给支付宝返回success,如果不是success,支付宝会根据一定的时间策略不停重发。
请详见淘宝秒杀设计: http://www.zhihu.com/question/20496392

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Dreamweaver Mac version
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.
