web-dev-qa-db-ja.com

axios getリクエストでオブジェクトを送信

オブジェクトを使用してgetリクエストを送信します。オブジェクトデータは、セッションデータを更新するためにサーバーで使用されます。しかし、オブジェクトを正しく送信していないようです。なぜなら、オブジェクトを返送して印刷しようとすると、次のようになるだけだからです。

" N; "

私はこのようなjQueryでそれを行うことができ、それは動作します:

 $.get('/mysite/public/api/updatecart', { 'product': this.product },  data => {     
              console.log(data);
           });

オブジェクトは、laravel=のようにサーバーから送り返されます。

public function updateCart(Request $request){
      return serialize($request->product);

同じことはaxiosでは機能しません:

axios.get('/api/updatecart', { 'product': this.product })       
                .then(response => {
                    console.log(response.data);
            });

URLが異なるように、axiosでデフォルトのbaseURLを設定します。 APIエンドポイントに正しく到達し、関数は送信されたものを返しますが、これは明らかにオブジェクトではありませんでした。結果として「N;」しか得られません。

15
Galivan

Axios API はjQuery AJAX oneと少し異なります。 GETリクエストとともにいくつかのパラメーターを渡すには、paramsオブジェクトのconfigプロパティを使用する必要があります(.get()メソッドの2番目のパラメーター):

axios.get('/api/updatecart', {
  params: {
    product: this.product
  }
}).then(...)
30
raina77ow