2017-02-19 24 views
0

データをVuejs postメソッドに渡す際に問題があります。私はVUE-リソースを使用してドキュメントにあるよ:私は、ヘッダーを入れたいデータをPOSTメソッドに渡す

this.$http.post('/someUrl', [body], [options]).then(successCallback, errorCallback); 

、それが正常に動作します(サーバーが正しいヘッダを読み込む)ために:

this.$http.post(
     'http://localhost:8081/login', 
     { 
     headers: { 
      'Accept': 'application/json' 
     } 
     }); 

が、私はすべてのデータを追加しようとした場合

this.$http.post(
     'http://localhost:8081/login', 
     {username: 'admin'}, 
     { 
     headers: { 
      'Accept': 'application/json' 
     } 
     }); 

のか、いくつかのデータを定義し、同様にそこに置か:何かがうまくいかない、例えば私が試した

this.$http.post(
     'http://localhost:8081/login', 
     this.data, 
     { 
     headers: { 
      'Accept': 'application/json' 
     } 
     }); 

との両方のソリューションの本体部のためには常に空です - 使用して要求から身体データをチェック:それは私がポストマンからの要求を送信罰金、それを作品ebcause

body = req.getReader().lines().collect(Collectors.joining(System.lineSeparator())); 

をおそらく問題はvue.jsコードです。私は何をすべきか?

+3

Axiosを使用すると、Vueリソースはもはや維持されず、Vue 2と完全には互換性がありません –

+0

ツールを責めるのは非常に簡単です:)それについても言いたいことがあります。あなたはどんなエラーが出ているのか教えてください。 「十分なデータが得られない」 @BelminBedakはVueResourceについては正解ですが、私はそれを使用しても問題はなく、私は停止するつもりはありません。 – peaceman

+0

@peaceman私はVueJS 2ベースのプロジェクトでVue Resourceを使っていましたが、それは私にとってもうまくいきました.GET Requestsにしか対応していませんでした.A Axiosを使うようコミュニティから提案されました。 –

答えて

1

は...あなたはこれが私の作品のポスト

this.$http.post('url', {something: "string"}) 
    .then ((res)=> console.log (res.body)) 
    .catch ((error)=> console.log(error)) 

で三番目の引数を含めずにPOSTリクエストを送信してみまし

もう一つは、あなたが適切に要求データを取得していることを確認していますバックエンドで...それはpythonのように思えますし、私はそれがどのように動作するか完全にはわかりません。

+0

春のブートで、あなたのコードボディは '' ''です。私はPostmanを使うと何がうまくいくのか分かりません... – littlewombat

+0

すみませんしかし、私はJava&Springであなたを助けることはできませんが、VueResourceの部分が何度も働いていることを保証します。あなたは有効なjsonデータを投稿しています。あなたは確かにアキュータスやjqueryで遊んでみるか、バックエンドコードで何か起きているかどうかを調べることができます。それがリクエストデータを印刷する唯一の方法ですか? – peaceman

+0

jqueryを試しましたが、同じ問題(ボディが空です)があります。あなたが弓座からのリクエストが郵便配達員からのリクエストと異なるのはどういう考えがありますか? – littlewombat

関連する問題