2016-03-02 2 views
0

Я после этого учебника для связывания данных с использованием узлов и Угловые: https://codeforgeek.com/2014/09/two-way-data-binding-angularjs/связывание данных с использованием узлов и угловой

Вот мой код сервера:

var express = require("express"); 
var mysql = require("mysql"); 
var app = express(); 
/* 
* Configure MySQL parameters. 
*/ 
var connection = mysql.createConnection({ 
host : "localhost", 
user : "root", 
password : "password", 
database : "csflip" 
}); 

/*Connecting to Database*/ 
var log = console.log; 


jamesBug = function(txt) { 
var d1 = new Date(); 

var logtxt = "["+d1.toUTCString()+"] "+txt; 
    console.log(logtxt); 

} 
connection.connect(function(error){ 
if(error) 
{ 
jamesBug("Problem with MySQL"+error); 
} 
else 
{ 
jamesBug("Connected with Database"); 
} 
}); 

/*Start the Server*/ 

app.listen(3000,function(){ 
jamesBug("It's Started on PORT 3000"); 
}); 


app.get('/',function(req,res){ 
res.sendfile('index.php'); 
}); 

app.get('/loadcoinflips',function(req,res){ 
jamesBug("Got a load request for conflip listings from database.") 
connection.query("SELECT * FROM coinflips WHERE accepted = '0'",function(err,rows){ 
if(err) 
{ 
jamesBug("Problem with MySQL: "+err); 
} 
else 
{ 
jamesBug("Recieved the data from the database."); 
jamesBug("Data recieved stringified to JSON: ("+JSON.stringify(rows)+")"); 

res.end(JSON.stringify(rows)); 

jamesBug("Outputted the JSON data."); 
} 
}); 
}); 

Это мой core.js файл :

app.controller('two_way_control',function($scope,$http,$interval){ 
load_pictures(); 
$interval(function(){ 
load_pictures(); 
},300); 
function load_pictures(){ 
$http.get('http://localhost:3000/loadcoinflips').success(function(data){ 
$scope.ids=data; 
}); 
}; 
}); 

Это, как я уверен, отображение данных:

<div id="container" ng-app='two_way' ng-controller='two_way_control'> 
     <div class="row" ng-repeat="data in ids"> 
     <h2>{{data.id}}</h2> 
     <br /> 
     </div> 
</div> 

Однако, когда я загружаю мою страницу Это пустой, я глуп, или кто-то может помочь мне ...

Спасибо,

Джеймс

+0

есть ли какая-либо консольная ошибка, которую вы получаете? –

+0

Я продолжаю получать эту ошибку: 'XMLHttpRequest не может загрузить http: // localhost: 3000/loadcoinflips. В запрошенном ресурсе нет заголовка «Access-Control-Allow-Origin». Поэтому Origin 'http: // localhost' не имеет права доступа. ' – iJamesPHP

+0

Это не что иное, как проблема CORS, вам нужно исправить это. –

ответ

0

Попробуйте использовать это:

app.all('/*', function(req, res, next) { 
    // CORS headers 
    res.header("Access-Control-Allow-Origin", "*"); 
    // restrict it to the required domain 
    res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS'); 
    // Set custom headers for CORS 
    res.header('Access-Control-Allow-Headers', 'Authorization,Content-type,Accept,X-Access-Token,X-Key'); 
    if (req.method === 'OPTIONS') { 
    res.status(200).end(); 
    } else { 
    next(); 
    } 
}); 
Смежные вопросы