close

今天遇到Laravel的問題,在撰寫修改貼文的view時,所遇到的小BUG,感覺之後應該也會常遇到,所以記錄下來

傳統發送form的方式,在laravel的官方文件內有提及到,必須使用  {{ method_field('PUT') }}

來增加一個<input type="hidden" name="_method" value = "PUT"> 的html tag

因為html tag 的form method沒有post方法,所以只能透過這種方式來解決method的問題

然後axios也必須使用相同的概念撰寫,否則request就沒有資料    2019/03/14

首先先說明發生原因

如下圖,使用axios的put方法,來update我的post資料,但是不管有沒有附加_method 參數,還是沒有辦法取得request的資料。

 

依照StackOverFlow的線索,照著做,可以看到我request送過來,直接傳回去。

雖然request發送時,有資料,但是一送回去資料就不見了!!!!!  一來一往資料居然憑空消失了。

 

解決的方案

使用axios.post method然後再FormData裡面append _method 方法。

照著上面一開始提到的form的概念,將axios.put()  改成 axios.post() ,然後append('_method', 'PUT')。

 

 

這樣就可以成功送資料到laravel的request內拉

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 蕭瑞文 的頭像
    蕭瑞文

    Neil的部落格

    蕭瑞文 發表在 痞客邦 留言(0) 人氣()