2014-12-18 1 views
0

노드에 각도를 사용하고 MySQL DB에 연결하려고합니다.

나는 (server.js)이 스크립트에서 노드 MySQL의 모듈을 사용하고 있습니다 :

var myApp = angular.module('myApp', []); 

myApp.controller('AppListCtrl', ['$scope', '$http', 
    function($scope, $http) { 
     $http.get('../scripts/server.js').success(function(data) { 
      console.dir(data); 
     }); 
    } 

이되지 않습니다

var mysql=require('mysql'); 

var connection = mysql.createConnection(
     { 
      host   : 'localhost', 
      user   : 'root', 
      password : '', 
      database : 'mysql', 
     } 
); 

connection.connect(); 

var queryString = 'SELECT * FROM users'; 

connection.query(queryString, function(err, rows, fields) { 
    if (err) throw err; 

    for (var i in rows) { 
     console.log('Post Titles: ', rows[i].post_title); 
    } 
}); 

connection.end(); 

는이 같은 각도로 JS 스크립트를 실행하려면 (js 파일은 실제로 실행되지 않습니다.) 내 js를 html로 랩핑해야합니까? 내가 잘못된 방향으로가는거야? 나는 js 대신 php 나 다른 언어를 사용하지 않고이 모든 것을하고 싶다.

+0

당신은 실제로 노드 서버를 통해이를 실행하거나 브라우저에서 위의 스크립트를 실행하려고? –

+0

죄송합니다. 내가하려는 일에 대해 분명하지 않았을 수 있습니다. 두 번째 스 니펫은 실제로 각진 프로젝트의 "controllers.js"파일입니다. 그 파일에서 server.js로 ajax 요청을하려고합니다. 그래서 저는 각기 다른 프로젝트에서 node.js 스크립트를 실행하려고합니다. – red888

+0

노드에서 스크립트를 실행하고 데이터가 외부 소스에 제공 될 것으로 예상 할 수 없습니다 (각도 인 경우). HTTP 요청/응답을 사용하여 데이터를 제공해야합니다. –

답변

1

$http.get 메서드는 AJAX 요청을 수행하므로 js 파일을 JavaScript가 사용하는 문자열로 가져옵니다.

아마 당신이 찾고있는 JSONP는 다운로드 한 파일을 JavaScript로 실행합니다. 대신 $http.jsonp을 사용해보세요.

Angular docs on $http.jsonp

관련 문제