我第一次在Laravel 5.1中整合Stripe付款,我正在引用本教程Simple Payments with Stripe and Laravel并完成所有步骤。
付款后,我收到此错误:
在条带日志中,它显示我已成功完成付款。
我在此函数中收到此错误:
public function createStripeCustomer($token)
{
\Stripe\Stripe::setApiKey(env('STRIPE_SECRET'));
$customer = \Stripe\Customer::create(array(
"description" => Auth::user()->email, <-- Error at this line
"source" => $token
));
//Auth::user()->stripe_id = $customer->id;
Auth::user()->save();
return $customer;
}
我为用户创建了bellow架构,但不了解需要存储哪些细节:
Schema::table('users', function ($table) {
$table->string('stripe_id')->nullable();
$table->string('card_brand')->nullable();
$table->string('card_last_four')->nullable();
$table->timestamp('trial_ends_at')->nullable();
});
答案 0 :(得分:0)
使用Auth中间件保护您的路线:
Route::get('stripepayment', [
'middleware' => 'auth',
'uses' => 'OrderController@savePayment'
]);
如果您偶然退出,它会自动检查Auth :: user()并将您重定向到登录页面。
您的代码出错,因为它未能获取Auth :: user(),因为您没有登录。