我正在尝试让我的基于 .net 4.0 的网站与 PayPal Express 集成工作。
我的代码利用了 paypal_base.dll
虽然最近在各种技术论坛上的许多支持帖子中都引用了这个文件,但我在网络上的任何地方都找不到任何事件链接来下载它。
x.com 站点已禁用所有链接,因为它已被新的 developer.paypal.com 站点取代。 在这个不是很有帮助的新网站上,它提供了 Github 的下载链接。我能在那里找到的唯一合适的 SDK DLL 是 PayPalCoreSDK.dll、PayPalMerchantSDK.dll 和 PayPalPermissionSDK.dll——它们似乎都不包含“CallerServices”或我的代码期望的其他接口(interface)。
在他们的新 developer.paypal.com 网站上没有提到这个通常引用的 paypal_base.dll 文件!他们没有说它已经贬值了。
PayPal 提供的 DDL 似乎与我正在寻找 com.paypal.soap.api 的示例代码不兼容
例如,“CallerServices”未出现在 PayPal 在其 GitHub 下载站点上提供的任何旧版 SDK DLL 中。
我手头的paypal_base.dll版本是5.6.61.0。我在各种支持帖子中看到了较新的版本。
我的版本抛出通信错误。 “请求已中止:无法创建 SSL/TLS 安全通道。”
我希望有人能告诉我在哪里可以下载最新版本的 paypal_base.dll 或者告诉我哪个 PayPal SDK DLL 支持这些方法。
非常感谢, 东盟地区论坛
最佳答案
我刚刚遇到了这个问题(我们的版本是 5.6.63.0)。 问题是 dll 指向错误的 API Endpoints . 代码使用 SOAP API,而 dll 指向 NVP 端点(您可以查看 dll 内部并查看 XML)。
问题已通过在站点 Web.config 文件中覆盖这些解决。
将以下内容添加到配置部分:
<section name="paypal" type="com.paypal.sdk.core.ConfigSectionHandler, paypal_base"/>
然后在<paypal></paypal>
中的paypal_base.dll 中添加XML block web.config 文件中的部分,将链接替换为上面链接所需的链接。
来自 paypal_base.dll 的 XML block :
<endpoints>
<wsdl>
<environment name="live">
<port name="PayPalAPI">https://api.paypal.com/nvp</port>
<port name="PayPalAPIAA">https://api-aa.paypal.com/nvp</port>
<port name="PayPalAPI" threetoken="true">https://api-3t.paypal.com/nvp</port>
<port name="PayPalAPIAA" threetoken="true">https://api-aa-3t.paypal.com/nvp</port>
</environment>
<environment name="sandbox">
<port name="PayPalAPI">https://api.sandbox.paypal.com/nvp</port>
<port name="PayPalAPIAA">https://api.sandbox.paypal.com/nvp</port>
<port name="PayPalAPI" threetoken="true">https://api-3t.sandbox.paypal.com/nvp</port>
<port name="PayPalAPIAA" threetoken="true">https://api-3t.sandbox.paypal.com/nvp</port>
</environment>
<environment name="beta-sandbox">
<port name="PayPalAPI">https://api.beta-sandbox.paypal.com/nvp</port>
<port name="PayPalAPIAA">https://api-aa.beta-sandbox.paypal.com/nvp</port>
<port name="PayPalAPI" threetoken="true">https://api-3t.beta-sandbox.paypal.com/nvp</port>
<port name="PayPalAPIAA" threetoken="true">https://api-3t.beta-sandbox.paypal.com/nvp</port>
</environment>
</wsdl>
</endpoints>
替换每个 /nvp
与 /2.0
关于PayPal .NET 集成需要当前的 paypal_base.dll 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16951555/