2017-01-16 14 views
0

NodeJSサーバーと通信するために角度を使用しようとしています。私はjQueryのNodeJSサーバーへのリクエスト送信時の角度とAjaxの差

私は角

var app = angular.module('myApp', []); 
app.controller('myCtrl', function($scope, $http) { 
    $http({ 
     method : "GET", 
     url : "/list" 
    }).then(function mySucces(response) { 
     $scope.myWelcome = response.data; 
    }, function myError(response) { 
     $scope.myWelcome = response.statusText; 
    }); 
}); 

でやっている何を

$.ajax({ 
    url: "/list", 
    type: "POST", 
    contentType: "application/json", 
    dataType: "json", 
    success: function(data) { 
    console.log("data passed back from server is:" + data) 
    }, 
    error: function(err) { 
    console.log("an error occured") 
    console.log(err) 
    } 
}) 

にどうなるのか

角度を使用している場合しかし、ブラウザが私に語った:

Failed to load resource: the server responded with a status of 404 (Not Found) localhost:3000/list 

私は反論しないのですか? URLを正しく入力する?

Serverは

app.post('/list', function (req, res){ 
     // Establish connection to db 
     con.query('SELECT * FROM employees',function(err,rows){ 
     if(err) throw err; 
     for (var i = 0; i < rows.length; i++) { 
      listArray.push(rows[i]) 
     }; 
     /* 
     ar names = listArray.map(function(item) { 
     return item; 
     }); 
     console.log(names) 
     */ 
     res.send(listArray) 
     }) 
+1

Ajaxは 'POST 'を使用しています。角度は' GET'を使用しています、ノードは 'POST'を期待しています – Nico

+0

ああ問題でした。エラーは完全に私を捨てた。おかげでバンチ – gxminbdd

答えて

0

あなたのAJAX呼び出しがしかし、角度にあなたが今ノード構成がPOST要求を期待している

GETを指定している/listからPOST要求を行っていることが表示されます。あなたは単に角法をPOSTに変更することができます。

+0

私はとても恥ずかしいです。><。< – gxminbdd

+0

私たち全員に心配はありません! – Nico