javascript - 处理从外部服务器发送的 URL 的最佳方法是什么?
问题描述
对于(法国)支付系统PayFip,会生成一个 URL,该 URL 会打开一个带有不同参数的新窗口。例子:
https://www.payfip.gouv.fr/tpa/paiement.web?numcli=000001&exer=2018&refdet=2018EA0001&objet=&montant=11256&mel=xxx@xxx.xx&urlcl=https://www.mysite.fr/payment_return_page.php&saisie=T
付款后(通过这个新窗口)会生成一个带有“urlcl”的 URL,并在此窗口关闭时调用。
例子 :
https://www.mysite.fr/payment_return_page.php?numcli=######&exer=#####&refdet=######&objet=######&montant=##########&mel=#####@###. ##&saisie=T&resultrans=#&numauto=####&dattrans=########&heurtrans=####
我的共享服务器日志证明我的“payment_return_page.php”页面似乎正在接收 POST。但我不知道如何显示此页面。
从逻辑上讲,父页面应该更新,对吧?获取和显示此返回 URL 的参数(或 POST 数组)的最佳方法是什么?
我主要使用 PHP、JS、AJAX 或 JSON……这可能吗?
谢谢您的帮助。
解决方案
你可以使用这样的逻辑:
- 打开窗口并使用javascript调用支付系统的url
- 为窗口注册一个关闭处理程序
- 让 payment_return_page.php 将数据写入会话
- 等待窗口的关闭事件
- 将当前页面重新加载(或重新定位)到现在可以读取会话的 php 脚本...
推荐阅读
- wordpress - 如何将我网站的每个帖子自动重定向到移动设备上的 AMP 版本?
- google-chrome-app - 无法支付 chrome 网上商店的注册费
- laravel - 如何在 Vuejs 中单击图像 ID
- java - 在 Excel 工作表的列末尾写入 excel 数据
- bluetooth-lowenergy - 尽管我已配对,但 BLE 属性需要身份验证
- azure - 更改为不同的 Azure 订阅时,Azure PowerShell 脚本不起作用
- excel - Excel:CountIf RangeA 比 Range B 大 n 个单位
- python-3.x - 如何在字符串中打印python中的单个反斜杠?
- python - ImportError:没有名为 _shim 的模块
- c# - 从“double”到“System.Runtime.Serialization.ISerializable”的装箱转换