如何使 paypal 按钮在 asp.net webform 中工作

Posted

技术标签:

【中文标题】如何使 paypal 按钮在 asp.net webform 中工作【英文标题】:How to make paypal button work in asp.net webform 【发布时间】:2017-05-20 00:35:34 【问题描述】:

我正在尝试找到一种将贝宝捐赠按钮添加到 asp.net 网络表单的方法,因为它包裹在我无法添加的表单周围。有没有办法添加它。或者只是一个链接按钮。

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
    <input type="hidden" name="cmd" value="_s-xclick">
    <input type="hidden" name="hosted_button_id" value="xxxx">
    <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" >
    <img  border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif"  >
</form>

【问题讨论】:

Multiple forms on ASP.NET page的可能重复 【参考方案1】:

您可以做几件事。

使用表单制作一个静态 html 页面,并在 aspx 页面上使用 Iframe。

<iframe src="paypal.html"></iframe>

从后面的代码中单击按钮执行表单发布(代码未经测试,但这里有更多关于如何在代码后面发布表单的示例)

protected void Button1_Click(object sender, EventArgs e)

    using (WebClient client = new WebClient())
    
        byte[] response = client.UploadValues("https://www.paypal.com/cgi-bin/webscr", new NameValueCollection()
        
             "cmd", "_s-xclick" ,
             "hidden", "xxxx" 
        );

        string result = Encoding.UTF8.GetString(response);
    

您可以尝试将表单值作为查询字符串建立链接。在各种论坛上都有对此的参考。

<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=xxxx">PayPal</a>

最后您可以与 PayPal API 进行通信

https://developer.paypal.com/docs/api/

【讨论】:

我使用了 iframe 概念,因为我不确定它的行为方式。但它工作正常,也可以控制它的设计方面。无论如何,感谢您的选择,其中还包括 iframe 之一。 只有我不确定 "cmd", "_s-xclick" , "hidden", "xxxx" 是否可行。链接可能是最简单的,但我必须四处看看它是否按照你的建议工作。我很惊讶为什么贝宝没有基于链接的按钮 我已经为查询字符串方法投了赞成票 - 我很欣赏它可能不是最健壮/面向未来的,但它在写作时可以完成工作。谢谢

以上是关于如何使 paypal 按钮在 asp.net webform 中工作的主要内容,如果未能解决你的问题,请参考以下文章

如何克服为贝宝按钮 asp.net 嵌入 html 表单

如何在 asp .net mvc 中集成 paypal 付款并接收付款状态和信息?

ASP.Net WebForms + Paypal 表单

等待 Paypal 付款通知 ASP.NET

如何在 HTML 中为 ASP.NET MVC 创建一个按钮? [复制]

asp.net 中的 Paypal 表单标签问题