Stripe.Net v34.16.0在创建结帐会话对象时弹出我的代码,响应:
StripeException:没有这样的计划:plan_myPlanId;实时模式中存在一个类似的对象,但是使用了测试模式密钥来发出此请求。
我在Stripe Dashboard中看不到将给定计划指定为测试计划的方法。我也没有看到 任何类似于mode属性的东西..我的代码
public async Task<IActionResult> Index()
{
//var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
//user = await _userManager.FindByIdAsync(userId);
StripeConfiguration.ApiKey = "sk_test_mytestkey";
var options = new Stripe.Checkout.SessionCreateOptions
{
PaymentMethodTypes = new List<string> {
"card",
},
SubscriptionData = new Stripe.Checkout.SessionSubscriptionDataOptions
{
Items = new List<SessionSubscriptionDataItemOptions> {
new SessionSubscriptionDataItemOptions {
Plan = "plan_myplanid",
},
},
},
//to do
SuccessUrl = "localhost://home",
CancelUrl = "localhost://home",
//CancelUrl = "https://example.com/cancel",
};
var service = new Stripe.Checkout.SessionService();
Stripe.Checkout.Session session = service.Create(options); //error out here
StripeCheckoutSessionId stripeCheckoutSessionId = new StripeCheckoutSessionId();
stripeCheckoutSessionId.StripeSessionID = session.Id;
return View(stripeCheckoutSessionId);
}
我在.Net选项卡中指的是Stripe示例代码:https://stripe.com/docs/payments/checkout/subscriptions/starting
感谢您为纠正错误提供的指导。