


PHP analysis of the difference between return_url and notify_url in Alipay development, Alipay notifyurl_PHP tutorial
php analyzes the difference between return_url and notify_url in Alipay development, Alipay notifyurl
This article analyzes the difference between return_url and notify_url in Alipay development using PHP. Share it with everyone for your reference. The specific analysis is as follows:
What statuses are returned by return_url and notify_url in Alipay processing business? If we want to do some processing based on it, we must understand the difference between return_url and notify_url. Let me introduce it to you below.
Problem description:
I had such a problem when dealing with Alipay business. After the payment was completed, when Alipay jumped to the merchant's designated page, the order status had been updated. Through debugging, it was found that Alipay notified notify_url first and completed the order status.
Alipay return_url and notify_url notification order issues:
The order is not necessarily certain, please do not judge based on the order. How to judge specifically is based on comparing the status in your current database with the status just obtained from Alipay to determine whether it has been processed.
Regarding the difference between Alipay return_url and notify_url, the synchronization notification page feature (return_url feature):
(1) After the payment is successful, the buyer will see an Alipay page prompting that the transaction is successful. The page will stay for a few seconds, and then automatically jump back to the synchronization notification page specified by the merchant (parameter return_url);
(2) To obtain parameters on this page, you need to use the GET method, such as request.QueryString("out_trade_no"), $_GET['out_trade_no'];
(3) This method only automatically jumps after the buyer completes payment, so it will only be done once;
(4) This method is not that Alipay actively calls the merchant page, but that Alipay's program uses the page automatic jump function to automatically jump to the user's current page;
(5) Based on the reason (4), debugging can be done locally instead of only on the server;
(6) The return URL is only valid for one minute. If it exceeds one minute, the link address will become invalid and the verification will fail;
(7) When setting the path of the page jump synchronization notification page (return_url), do not add custom parameters after the page file. For example:
Incorrect writing:
Correct writing:
Server asynchronous notification page feature (notify_url feature):
(1) It must be ensured that there are no characters on the server’s asynchronous notification page (notify_url), such as spaces, HTML tags, exception prompts thrown by the development system, etc.;
(2) Alipay uses POST to send notification information, so the parameters are obtained in this page, such as:
request.Form("out_trade_no"), $_POST['out_trade_no'].
(3) This method will be enabled only if Alipay actively initiates notification;
(4) Only if the transaction exists in Alipay's transaction management and the transaction status changes, Alipay will initiate a server notification through this method (the transaction status in the immediate account is "Waiting for buyer payment" Status will not send notifications by default);
(5) Interaction between servers, unlike page jump synchronization notifications that can be displayed on the page, this interaction method is invisible;
(6) When the transaction status changes for the first time (in instant payment, the transaction status is transaction completed), not only the page jump synchronous notification page will be enabled, but the server asynchronous notification page will also receive the notification from Alipay Notification of processing results;
(7) After the program is executed, "success" must be printed out (without quotation marks). If the characters fed back to Alipay by the merchant are not the 7 characters of success, the Alipay server will continue to resend the notification until it exceeds 24 hours and 22 minutes.
Under normal circumstances, 8 notifications are completed within 25 hours (the interval frequency of notifications is generally: 2m, 10m, 10m, 1h, 2h, 6h, 15h);
(8) After the program execution is completed, page jump cannot be performed on this page. If a page jump is executed, Alipay will not receive the success character, and the Alipay server will determine that the page program is running abnormally, and will resend the processing result notification;
(9) Cookies, sessions, etc. will be invalid on this page, that is, these data cannot be obtained;
(10) The debugging and operation of this method must be on the server, that is, accessible on the Internet;
(11) The main function of this method is to prevent order loss, that is, the page jump synchronization notification does not process the order update, but it will handle it;
(12) The notification ID (parameter notify_id) is only valid for one minute. If it exceeds one minute, the notification will fail to be verified. Once the verification is successful, the next verification will be invalid.
I hope this article will be helpful to everyone’s PHP programming design.

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

PHP uses MySQLi and PDO extensions to interact in database operations and server-side logic processing, and processes server-side logic through functions such as session management. 1) Use MySQLi or PDO to connect to the database and execute SQL queries. 2) Handle HTTP requests and user status through session management and other functions. 3) Use transactions to ensure the atomicity of database operations. 4) Prevent SQL injection, use exception handling and closing connections for debugging. 5) Optimize performance through indexing and cache, write highly readable code and perform error handling.

Using preprocessing statements and PDO in PHP can effectively prevent SQL injection attacks. 1) Use PDO to connect to the database and set the error mode. 2) Create preprocessing statements through the prepare method and pass data using placeholders and execute methods. 3) Process query results and ensure the security and performance of the code.

PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

PHP is widely used in e-commerce, content management systems and API development. 1) E-commerce: used for shopping cart function and payment processing. 2) Content management system: used for dynamic content generation and user management. 3) API development: used for RESTful API development and API security. Through performance optimization and best practices, the efficiency and maintainability of PHP applications are improved.

PHP makes it easy to create interactive web content. 1) Dynamically generate content by embedding HTML and display it in real time based on user input or database data. 2) Process form submission and generate dynamic output to ensure that htmlspecialchars is used to prevent XSS. 3) Use MySQL to create a user registration system, and use password_hash and preprocessing statements to enhance security. Mastering these techniques will improve the efficiency of web development.

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.


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

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

SublimeText3 English version
Recommended: Win version, supports code prompts!

WebStorm Mac version
Useful JavaScript development tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Zend Studio 13.0.1
Powerful PHP integrated development environment