我在Laravel中有一个简单的帖子表单,在帖子之后重定向到相同的表单(状态为302)。我不确定是否有任何路线问题或其他不同的事情。
我的表格:
{!! Form::open(['route' => 'subscription.store']) !!}
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="pk_test_xxxxxx"
data-amount="2000"
data-name="Name"
data-description="2 widgets"
data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
data-locale="auto"
data-currency="cad">
</script>
{!! Form::close() !!}
路线:
Route::post('/subscription/store', 'Admin\SubscriptionController@store')->name('subscription.store')->middleware('can:admin-access');
Cntroller:
public function store(Request $request)
{
$user = User::find($request->user()->id);
$user->newSubscription('main', 'main')->create($request->input('stripeToken'));
if ($user->subscribed('main')) {
return redirect()->route('admin.dashboard');
}
}
Chrome网络日志:
Request Method:POST
Status Code:302 Found
Remote Address:10.1.1.33:80
Referrer Policy:no-referrer-when-downgrade
这里有什么遗漏或错误的建议吗?
答案 0 :(得分:0)
您需要定义默认重定向。目前,您只能在订阅用户时重定向。如果不是,则设置默认路由以重定向。
public function store(Request $request)
{
$user = User::find($request->user()->id);
$user->newSubscription('main', 'main')->create($request->input('stripeToken'));
if ($user->subscribed('main')) {
return redirect()->route('admin.dashboard');
}
return redirect()->route('admin.dashboard');
}
答案 1 :(得分:0)
这是我的错。我有一个中间件,负责检查每个请求中的订阅状态,并且在构造函数中错误地启用了。