【问题标题】:Vuejs Laravel Axios create requestVuejs Laravel Axios 创建请求
【发布时间】:2019-04-20 12:00:58
【问题描述】:

我有一个 vuejs 方法,它实现 axios 以将 put/create 请求发送到我的 laravel api create 方法并传递一些数据。

create(data) {
    this.mute = true;
    window.axios.put('/api/showreels/create', {data}).then(({ data }) => {
        this.showreels.push(new Showreel(data));
        this.mute = false;
    }).catch(error => {
            document.write(error.response.data);
    });
},

我的 api.php 使用以下资源设置

//Showreel
Route::resource('/showreels' , 'ShowreelController' , [
 'except' => ['edit', 'show', 'store']
]);

我有一个创建方法来处理请求并更新持久化数据。 (我已经添加了大量的调试)

    /**
 * Create a new resource.
 *
 * @return \Illuminate\Http\Response
 */
public function create(Request $request)
{

    $message = 'sdfsdfsdf';
    $message =  $message . $request->heading . 'BALLS';

    \App::abort(500, $message);

    $showreel = new Showreel();
    $showreel->heading = $request->heading;
    $showreel->subheading = $request->subheading;
    $showreel->detail =  $request->heading;
    $showreel->youtubeid =  $request->youtubeid;


    $showreel->heading = "test";
    $showreel->subheading = "test";
    $showreel->detail = "test";
    $showreel->youtubeid = "test";



    $showreel->save();

    return response($showreel->jsonSerialize(), Response::HTTP_CREATED);
}

然而 laravel 给了我这个错误。

不知道为什么会出现这个错误?

【问题讨论】:

  • 我发现 put 请求正在调用我的 update 方法而不是 create 方法。现在我只需要弄清楚如何创建,因为我的 api 不允许发布请求。

标签: laravel vue.js axios


【解决方案1】:

看起来我在我的 api.php 中禁用了 STORE 选项,它正在关闭发布请求选项。 post 请求现在将我带到 laravel 中的 store 方法。

【讨论】:

    猜你喜欢
    • 2020-08-09
    • 2020-07-15
    • 2020-06-21
    • 2021-01-20
    • 2019-01-04
    • 2021-11-16
    • 2019-11-06
    • 2019-09-29
    • 2017-07-05
    相关资源
    最近更新 更多