我们的网站有以下一次付款按钮。
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="custom" value="@Model.UserId.ToString()">
<input type="hidden" name="notify_url" value="http://www.testweb.com/paypal/IpnHandler">
<input type="hidden" name="return" value="http://www.testweb.com/paypal/Onetimeyearlysuccess">
<input type="hidden" name="cancel_return" value="http://www.testweb.com/paypal/cancel">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="8xxxxxxC">
<input type="image" src="@Url.Content("~/images/OneTime55year.png")" border="0" name="submit" style="width: 130px !important; height: 47px !important;" alt="PayPal - The safer, easier way to pay online!" >
</form>
完成了PayPal付款后,我们可以看到我们遇到了404个错误。问题是我们遇到了错误的URL。
https://www.testweb.com/paypalonetimeyearlysuccess?amt=55.00&cmp;cc = usd&cm = 22028&cm = amtem_name = onetimeannual 55&st = comppet = complet = complete
我们不知道为什么paypal之后缺少斜线。
正确的URL应为
https://www.testweb.com/paypal/ontimeyearlysuccess?amt=55.00&cc=usd&cm = 22028&cm = amtem_name = oneTimeAnnual 55&p.amp;
地址URL中的PayPal之后需要有斜杠符号。
您也可以从贝宝按钮的返回URL中看到正确的URL。
为什么它将其重定向到错误的地址?
也为了测试目的,我们更改了PayPal按钮的返回URL。我们简单地修改为" http://www.testweb.com/paypal/ontimeyearlysuccesstest。"
但是,我们可以看到更改返回URL后,PayPal并未将其重定向到修改的URL。
实际上我们很困惑,我们需要知道返回URL在哪里创建。
PayPal仅识别'返回'变量的值。关键点位于此URL(http://www.testweb.com/paypal/ontimeyearlysuccess)。建议您创建一个固定的单页,而没有重定向函数,例如.html,.php,.aspx等,以查看结果。