2017-05-06 8 views
0

私は2番からnode.jsへの投稿要求を送信しようとしています。何らかの理由で、私がフォームを送信した後、私はブラウザのURLバーに結果を表示します取得要求を送信します。さらに、ページをリロードしています。私は角度とノードの両方からコンソールエラーを取得しません。私は郵便配達員とそれをチェックし、サーバは正常に動作しています。角2 Http-Postが動作しません

URLが送信された要求の後に次のようになります。

http://localhost:3000/?username=testUser&email=test%test.com&password=34242

//server.js 
    app.post('/register', function(req, res){ 
    res.send('hello'); 
    console.log('success') 
    }) 

//http.service 
sendMyData(users : any) { 
    let bodyString = JSON.stringify(users); // Stringify payload 
    let headers  = new Headers({ 'Content-Type': 'application/json' }); // ... Set content type to JSON 
    let options  = new RequestOptions({ headers: headers }); // Create a request option 
    return this.http.post('http://localhost:3000/register', bodyString, options) 
    .map((res : Response) => res.json()) 
} 

//header.component 
onSubmit(form : NgForm) { 
    this.httpService.sendMyData(form) 
     .subscribe(
     (data) => alert(data) 
    ) 
} 

//header.component.html 
<form (ngSubmit)='onSubmit(f)' #f='ngForm'> 
....... 
</form> 
+0

とは無関係ですが、コンテンツタイプをJSONに設定し、オブジェクト/配列を文字列化することは、デフォルトでAngularで行われます。 ';あなたのコードは' this.http.postを返す(URL、ユーザ).MAP(...)に減少させることができます。 –

+0

あなたのURLは、 'REGISTER' を欠如していますか? – wannadream

+0

投稿リクエストとして送信しているので、URLを変更する必要はありません。私はちょうど私のケースでは、応答とconsole.logを取得する必要があります。 –

答えて

0

私はちょうど私が完全に「形態」の特性のすべての種類で全体のオブジェクトを返すことを忘れてしまったthis.httpService.sendMyData(form.value)を使用してこの問題を解決しました。したがって、form.value

関連する問題