# Laravel Form Request 返回 403 問題 jQuery 程式碼 ```javascript= @section('scriptsAfterJs') <script> $(document).ready(function () { . . . // 加入購物車按鈕點擊事件 $('.btn-add-to-cart').click(function() { // 請求加入購物車接口 axios.post('{{ route('cart.add') }}', { sku_id: $('label.active input[name=skus]').val(), amount: $('.cart_amount input').val(), }).then(function() { // 請求成功執行此回調 swal.fire('加入購物車成功', '', 'success'); }, function(error) { // 請求失敗執行此回調 if (error.response.status === 401) { // HTTP 狀態碼為 401 代表用戶未登入 swal.fire('請先登入', '', 'error'); } else if (error.response.status === 422) { // HTTP 狀態碼為 422 代表用戶輸入驗證失敗 var html = '<div>'; _.each(error.response.data.errors, function(errors) { _.each(errors, function(error) { html += error + '<br>'; }) }); html += '</div>'; swal.fire({content: $(html)[0], icon: 'error'}) } else { // 其他情況應該是系統故障 swal.fire('系統錯誤', '', 'error'); } }); }); ``` 在做點擊按鈕加入購物車功能時,不知道為什麼總是得到系統錯誤的提示,但測試使用者未登入的反應卻是正常的,如下圖所示: ![](https://i.imgur.com/DDIQRMe.png) (使用者已登入,輸入格式也正確的情況) ![](https://i.imgur.com/8inHQMe.png) (使用者未登入) 後來發現原來自定義的 `AddCartRequest` 也要添加權限 ```php= /** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return true; } ``` 改好後就成功加入購物車了 ![](https://i.imgur.com/cVjfhae.png) 資料庫也有寫入記錄 ![](https://i.imgur.com/IvvOpHZ.png) ###### tags: `Laravel`