0

我正在尝试让 Paypal Rest API 的 Pizza App 示例正常工作,但我收到来自服务器的错误 500 响应

在第一次调用获取 Auth 令牌期间出现错误。

 private string accessToken
    {
        get
        {
            string tokenAccess = new OAuthTokenCredential(ClientIdentity, ClientSecret).GetAccessToken();
            return tokenAccess;
        }
    }

使用的 clientid 和 secret 是我自己在 web.config 中的沙箱凭据。除了更改凭据外,我没有以任何方式修改此示例应用程序。

我也使用正确的端点,

<add name="endpoint" value="https://api.sandbox.paypal.com"/>

任何人都可以就如何缩小问题范围提供一些建议吗?

日志:2013-06-21 10:25:20,797 [7792] DEBUG PayPal.OAuthTokenCredential [(null)] grant_type=client_credentials 2013-06-21 10:25:22,622 [7792] INFO PayPal.OAuthTokenCredential [(null)] 得到来自服务器的 InternalServerError 响应 2013-06-21 10:25:22,622 [7792] 错误 PayPal.Exception.PayPalException [(null)] 远程服务器返回错误:(500) 内部服务器错误。PayPal.Exception.PayPalException:远程服务器返回错误:(500)内部服务器错误。---> System.Net.WebException:远程服务器返回错误:(500)内部服务器错误。在 System.Net.HttpWebRequest.GetResponse() 在 PayPal.OAuthTokenCredential.GenerateOAuthToken(String base64ClientID) --- 内部异常堆栈跟踪结束 ---

4

2 回答 2

1

诚挚的道歉 - 事实证明我们的一些 SDK(.Net 和 Python)没有设置“Content-Type”标头,并且在我们的 API 的服务器端进行了更改,开始强制执行“Content-Type”根据需要标头。这是在 SDK 中完成的修复 - 如更改日志中所述:https ://github.com/paypal/sdk-core-dotnet/blob/master/CHANGELOG.md

我不确定它是如何滑倒我们的标准发布公告流程的 - 我们将确保从下一次开始所有更改(它们已经记录在更改日志中)也被宣布,以便每个人都知道什么时候有新版本的 SDK 和修复了错误。

于 2013-06-25T05:27:42.240 回答
0

我自己在我正在开发的应用程序上遇到了这个问题。读完这篇文章后,我开始怀疑他们是否改变了一些东西,瞧,他们做到了!自周五(2013 年 6 月 21 日)以来有一个新版本的 SDK,并且从最后一个 SDK 的访问被切断。有趣的是,他们忘记向注册开发人员提及这一点-.-

无论如何,一些类名发生了变化,我发现的是:

  • 金额详细信息 -> 详细信息;
  • 链接-> 链接。

我希望这会有所帮助,我的应用程序现在运行良好 =)

于 2013-06-24T09:01:43.510 回答