C# 401切换到Live时未经授权
我正在尝试使用贝宝授权网络支付。我已经成功地将我的帐户升级到Web Payments Pro,并构建了一个在沙箱中运行良好的解决方案来处理信用卡支付 然而,现在我正试图切换到实时模式,我收到错误401未经授权 我做错了什么 我使用OAuth的方式如下:C# 401切换到Live时未经授权,c#,asp.net-mvc,paypal,C#,Asp.net Mvc,Paypal,我正在尝试使用贝宝授权网络支付。我已经成功地将我的帐户升级到Web Payments Pro,并构建了一个在沙箱中运行良好的解决方案来处理信用卡支付 然而,现在我正试图切换到实时模式,我收到错误401未经授权 我做错了什么 我使用OAuth的方式如下: private OAuthTokenCredential ApiAccessToken { get { if (this._authToken != null)
private OAuthTokenCredential ApiAccessToken
{
get
{
if (this._authToken != null)
{
return this._authToken;
}
var clientId = ConfigurationManager.AppSettings["clientId"];
var secretToken = ConfigurationManager.AppSettings["secretToken"];
var config = new Dictionary<string, string> { { "mode", ConfigurationManager.AppSettings["PayPalMode"] } };
this._authToken = new OAuthTokenCredential(clientId, secretToken, config);
return this._authToken;
}
}
专用OAuthTokenCredential ApiAccessToken
{
得到
{
if(this.\u authToken!=null)
{
返回此。\u authToken;
}
var clientId=ConfigurationManager.AppSettings[“clientId”];
var secretToken=ConfigurationManager.AppSettings[“secretToken”];
var config=newdictionary{{“mode”,ConfigurationManager.AppSettings[“PayPalmMode”]};
此._authToken=新的OAuthTokenCredential(clientId、secretToken、config);
返回此。\u authToken;
}
}
我已将模式切换到“live”,并验证了clientId和秘密令牌。我甚至删除了这个应用程序并重新创建了它。仍然是错误通常,该错误意味着您的客户端id和密码有问题,或者您可能正在apiContext中将环境设置为沙箱。您还需要获得REST API直接信用卡付款的批准。您可以在沙箱中执行此操作而无需获得批准,但切换到live则需要获得批准
登录developer.paypal.com>Dashboard>My account并在“Live”列下进行检查。如果您看到“启用”链接,单击它,它将提交您的申请供批准 要让您的应用程序上线:
关于它的更多细节,请查看Paypal我所面临的问题与我通过更改解决的问题相同
name="mode" value="sandbox"
到
在.net mvc的web.config中从未使用过paypal,但通常类似的客户端只在您注册到的特定域上工作。paypal在创建客户端id和秘密令牌时是否有此选项?
name="mode" value="live"