反应 - 添加了查询参数在支付网关重定向后消失



初始参数: https://test.website.com/Form?value=testing&key=

根据用户选择,我使用以下代码添加查询参数值键 = "some_value">

const value = new URLSearchParams(this.props.location.search).get("value");
const key = new URLSearchParams(this.props.location.search).get("key");
if (key === "") {
this.props.history.push({
pathname: "/Form",
search: `?value=${value}&key=${key}`,
});
}

https://test.website.com/Form?value=testing&key=some_value 但是在此之后,我进行了支付网关集成,单击同一标签页中的按钮将被重定向到付款页面,成功消息后,它将重定向回父页面,并添加与付款相关的查询参数。此时,添加的密钥丢失

即 https://test.website.com/Form?value=testing&key=&paymentStatus=Success

支付网关最终控制您的用户在完成交易后将被重定向到的位置。听起来在您的情况下,网关正在做一些魔术将用户重定向回他们来自的 URL。

支付网关通常允许您(集成商(自定义它们被发送回的URL。Stripe 在其客户端 JavaScript 客户端接受successUrl。Adyen 接受其付款流程中的returnUrl。您没有提到您正在使用的网关,但我怀疑它会具有类似的功能。

如果他们不这样做 - 你将不得不依靠魔法。我建议确保 https://test.website.com/Form?value=testing&key=some_value 网址一直进入浏览器的历史记录。您在此处显示的代码片段将其推送到组件的历史记录中,但不清楚该历史记录是否与浏览器的历史记录相同。

最新更新