Rumah php教程 php手册 支付宝开发中return_url和notify_url的区别介绍

支付宝开发中return_url和notify_url的区别介绍

May 25, 2016 pm 04:47 PM
request

在支付宝处理业务中return_url,notify_url是返回些什么状态呢,我们要根据它来做一些处理就必须了解return_url,notify_url的区别,下面我就来给各位介绍介绍。


问题描述:

我在处理支付宝业务中出现过这样的问题,付费完成后,在支付宝跳转到商家指定页面时,订单状态已经更新,通过调试发现是支付宝先通知notify_url,完成了订单状态。

支付宝return_url和notify_url通知顺序问题:

顺序不一定的,请别以先后顺序来做判断。具体如何判断,是根据您当前数据库里的状态和刚从支付宝里获取到的状态做对比来判断是否有做过处理了。 

关于支付宝return_url和notify_url的区别:

同步通知页面特性(return_url特性):

(1)   买家在支付成功后会看到一个支付宝提示交易成功的页面,该页面会停留几秒,然后会自动跳转回商户指定的同步通知页面(参数return_url);

(2)   该页面中获得参数的方式,需要使用GET方式获取,如request.QueryString("out_trade_no")、$_GET['out_trade_no'];

(3)   该方式仅仅在买家付款完成以后进行自动跳转,因此只会进行一次;

(4)   该方式不是支付宝主动去调用商户页面,而是支付宝的程序利用页面自动跳转的函数,使用户的当前页面自动跳转;

(5)   基于(4)的原因,可在本机而不是只能在服务器上进行调试;

(6)   返回URL只有一分钟的有效期,超过一分钟该链接地址会失效,验证则会失败;

(7)   设置页面跳转同步通知页面(return_url)的路径时,不要在页面文件的后面再加上自定义参数。例如:

错误的写法:

正确的写法:

 

服务器异步通知页面特性(notify_url特性):

(1)   必须保证服务器异步通知页面(notify_url)上无任何字符,如空格、HTML标签、开发系统自带抛出的异常提示信息等;

(2)   支付宝是用POST方式发送通知信息,因此该页面中获取参数的方式,如:

request.Form("out_trade_no")、$_POST['out_trade_no']。

(3)   支付宝主动发起通知,该方式才会被启用;

(4)   只有在支付宝的交易管理中存在该笔交易,且发生了交易状态的改变,支付宝才会通过该方式发起服务器通知(即时到账中交易状态为"等待买家付款"的状态默认是不会发送通知的);

(5)   服务器间的交互,不像页面跳转同步通知可以在页面上显示出来,这种交互方式是不可见的;

(6)   第一次交易状态改变(即时到账中此时交易状态是交易完成)时,不仅页面跳转同步通知页面会启用,而且服务器异步通知页面也会收到支付宝发来的处理结果通知;

(7)   程序执行完后必须打印输出"success"(不包含引号)。如果商户反馈给支付宝的字符不是success这7个字符,支付宝服务器会不断重发通知,直到超过24小时22分钟。

一般情况下,25小时以内完成8次通知(通知的间隔频率一般是:2m,10m,10m,1h,2h,6h,15h);

(8)   程序执行完成后,该页面不能执行页面跳转。如果执行页面跳转,支付宝会收不到success字符,会被支付宝服务器判定为该页面程序运行出现异常,而重发处理结果通知;

(9)   cookies、session等在此页面会失效,即无法获取这些数据;

(10)   该方式的调试与运行必须在服务器上,即互联网上能访问;

(11)   该方式的作用主要防止订单丢失,即页面跳转同步通知没有处理订单更新,它则去处理;

(12)   通知ID(参数notify_id)只有一分钟有效期,超过一分钟该次通知会验证失败。一旦验证成功下次再验证就会失效。


Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

php request什么意思 php request什么意思 Jul 07, 2021 pm 01:49 PM

request的中文意思为“请求”,是php中的一个全局变量,是一个包含了“$_POST”、“$_GET”和“$_COOKIE”的数组。“$_REQUEST”变量可以获取POST或GET方式提交的数据、COOKIE信息。

Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x Cara menggunakan fungsi urllib.request.urlopen() untuk menghantar permintaan GET dalam Python 3.x Jul 30, 2023 am 11:28 AM

Cara menggunakan fungsi urllib.request.urlopen() dalam Python3.x untuk menghantar permintaan GET Dalam pengaturcaraan rangkaian, kita selalunya perlu mendapatkan data daripada pelayan jauh dengan menghantar permintaan HTTP. Dalam Python, kita boleh menggunakan fungsi urllib.request.urlopen() dalam modul urllib untuk menghantar permintaan HTTP dan mendapatkan respons yang dikembalikan oleh pelayan. Artikel ini akan memperkenalkan cara menggunakan

Apakah objek Permintaan dalam PHP? Apakah objek Permintaan dalam PHP? Feb 27, 2024 pm 09:06 PM

Objek Permintaan dalam PHP ialah objek yang digunakan untuk mengendalikan permintaan HTTP yang dihantar oleh klien ke pelayan. Melalui objek Permintaan, kami boleh mendapatkan maklumat permintaan pelanggan, seperti kaedah permintaan, maklumat pengepala permintaan, parameter permintaan, dsb., untuk memproses dan membalas permintaan tersebut. Dalam PHP, anda boleh menggunakan pembolehubah global seperti $_REQUEST, $_GET, $_POST, dll. untuk mendapatkan maklumat yang diminta, tetapi pembolehubah ini bukan objek, tetapi tatasusunan. Untuk memproses maklumat permintaan dengan lebih fleksibel dan mudah, anda boleh

Bagaimana untuk merangkum pemintas Vue3 Axios ke dalam fail permintaan Bagaimana untuk merangkum pemintas Vue3 Axios ke dalam fail permintaan May 19, 2023 am 11:49 AM

1. Cipta fail baharu yang dipanggil request.js dan import Axios: importaxiosfrom'axios' 2. Cipta fungsi yang dipanggil permintaan dan eksportnya: Ini akan mencipta fungsi yang dipanggil permintaan dan mengeksportnya Sediakan contoh Axios baharu dengan URL asas . Untuk menambah tetapan tamat masa dalam tika Axios yang dibalut, anda boleh lulus pilihan tamat masa apabila membuat tika Axios. exportconstrequest=axios.create({baseURL:'https://example.

Peranan dan kepentingan Permintaan dalam PHP Peranan dan kepentingan Permintaan dalam PHP Feb 27, 2024 pm 12:54 PM

Peranan dan kepentingan Permintaan dalam PHP Dalam pengaturcaraan PHP, Permintaan adalah mekanisme untuk menghantar permintaan ke pelayan Web Ia memainkan peranan penting dalam pembangunan Web. Permintaan digunakan terutamanya untuk mendapatkan data yang dihantar oleh pelanggan, seperti penyerahan borang, GET atau POST permintaan, dll. Melalui Permintaan, input data oleh pengguna boleh diperolehi, dan data boleh diproses dan dijawab. Artikel ini akan memperkenalkan peranan dan kepentingan Permintaan dalam PHP dan memberikan contoh kod khusus.

Apakah permintaan dalam PHP Apakah permintaan dalam PHP Jun 01, 2023 am 10:12 AM

Permintaan dalam PHP merujuk kepada permintaan Ia adalah pembolehubah super global dalam PHP Ia digunakan untuk mengumpul data yang dihantar oleh borang HTML dan parameter dalam URL Ia boleh mendapatkan data daripada permintaan GET dan POST pada masa yang sama tatasusunan bersekutu , di mana kunci adalah nama medan borang dan nilai adalah nilai medan borang. Apabila menggunakan pembolehubah $_request, data yang dimasukkan pengguna hendaklah sentiasa disahkan dan ditapis untuk mengelakkan isu keselamatan.

Cara menggunakan konteks untuk melaksanakan pengesahan parameter permintaan dalam Go Cara menggunakan konteks untuk melaksanakan pengesahan parameter permintaan dalam Go Jul 22, 2023 am 08:23 AM

Cara menggunakan konteks untuk melaksanakan pengesahan parameter permintaan dalam Pengenalan Go: Semasa proses pembangunan bahagian belakang, kami selalunya perlu mengesahkan parameter permintaan untuk memastikan kesahihan parameter. Bahasa Go menyediakan pakej konteks untuk mengendalikan maklumat konteks permintaan Reka bentuknya yang elegan dan penggunaannya yang mudah menjadikannya alat yang biasa digunakan. Artikel ini akan memperkenalkan cara menggunakan pakej konteks Go untuk melaksanakan pengesahan parameter permintaan dan memberikan contoh kod yang sepadan. Pengenalan kepada pakej konteks Dalam Go, pakej konteks digunakan untuk menyampaikan

Cara menggunakan modul urllib.request untuk menghantar permintaan HTTP dalam Python 3.x Cara menggunakan modul urllib.request untuk menghantar permintaan HTTP dalam Python 3.x Jul 30, 2023 am 11:21 AM

Cara menggunakan modul urllib.request untuk menghantar permintaan HTTP dalam Python3.x Dalam proses pembangunan sebenar, kita selalunya perlu menghantar permintaan HTTP untuk berinteraksi dengan pelayan. Python menyediakan modul urllib.request, yang merupakan salah satu modul dalam perpustakaan standard Python untuk mengendalikan permintaan URL. Dalam artikel ini, kita akan belajar cara menghantar permintaan HTTP menggunakan modul urllib.request

See all articles