【问题标题】:Call laravel controller from vue file从 vue 文件调用 laravel 控制器
【发布时间】:2021-11-04 21:54:42
【问题描述】:

我在 vue 文件中创建了一个组件,我想从 laravel 控制器函数中获取数据。
目前,我已经使用 axios 来获取数据。但是我可以直接调用 laravel 控制器函数吗?
提前致谢。

【问题讨论】:

  • 你做得对。从 Blade 或 vue 直接调用控制器不是一个好习惯。
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: laravel vue.js laravel-5 axios


【解决方案1】:

,与您的 laravel 应用程序通信的唯一方式是您的 网络服务。 (例如:REST API)

因为 LaravelVuejs 是完全分开的。 虽然在使用 Web 服务时,您会有不同的方法。

【讨论】:

    【解决方案2】:
    1. 从 Laravel/Lumen 应用程序公开路线
    2. 使用任何http客户端(axios)从vue调用路由或url

    注意:您不能直接从 Vue CLI 调用 Laravel 应用程序上的控制器方法

    【讨论】:

      【解决方案3】:

      您需要执行几个步骤。

      在vue js文件脚本区

      const url = `https://www.naveedramzan.com/api/getData/users/4`;
      Axios.defaults.headers.common['Authorization'] = `Bearer ${params.token}`; // if you are using some token authentication
      Axios.get(url,{params: params})
           .then((response) => {
               res(response.data);
           })
           .catch((err) => {
               rej(err);
           });
      

      在laravel中,routes/api.php文件

      Route::post('getData/users', 'UsersController@getData');
      

      在laravel中,控制器文件

      use Illuminate\Http\Request;
      
      
      public function getData(Request $request){
          ....
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-03-09
        • 2017-02-10
        • 1970-01-01
        • 1970-01-01
        • 2023-03-26
        • 2021-09-26
        相关资源
        最近更新 更多