PayPal 401 未经授权在实时制作中使用 .NET REST API for Express checkout API 进行信用卡支付

Posted

技术标签:

【中文标题】PayPal 401 未经授权在实时制作中使用 .NET REST API for Express checkout API 进行信用卡支付【英文标题】:PayPal 401 Unauthorized with credit card payment in live production using .NET REST API for Express checkout API 【发布时间】:2018-02-26 15:26:49 【问题描述】:

我正在使用 .NET REST API 进行 PayPal Express Checkout 直接信用卡付款。当我使用 sandbox 时,我创建了付款,将信用卡设置为融资工具,帐单地址和付款工作正常。 但是当我切换到 live 时,使用完全相同的数据调用 Payment.Create(apiContext) 会引发 PayPal.IdentityException 和 401-Unauthorized 消息。但是,当时我有有效的访问令牌。 使用 live environmnet 调用常规 PayPal 付款可以正常工作。

感谢您的任何建议。

【问题讨论】:

【参考方案1】:

我找到了解决这个问题的方法。需要在apiContext中确定sdkConfig。

        var sdkConfig = new Dictionary<string, string>   "mode", "live"  ;
        string accessToken = new OAuthTokenCredential(id, secret, sdkConfig).GetAccessToken();


        var apiContext = new APIContext(accessToken);
        apiContext.Config = sdkConfig;

【讨论】:

以上是关于PayPal 401 未经授权在实时制作中使用 .NET REST API for Express checkout API 进行信用卡支付的主要内容,如果未能解决你的问题,请参考以下文章

401 - 在 IE7 中未经授权,仅使用 Windows 身份验证。

401(未经授权)ReactJS

远程服务器返回错误:(401) Unauthorized。使用 Paypal Rest APi 时

为啥我在 Asp.Net CORE 中使用 JWT 获得 401 未经授权?

Spring Security 测试返回 401(未经授权)

护照-jwt 总是返回“未经授权” - 401