Tôi đã tạo một API nhỏ bằng Node / Express và cố gắng kéo dữ liệu bằng Angularjs nhưng vì trang html của tôi đang chạy dưới apache trên localhost: 8888 và API nút đang lắng nghe trên cổng 3000, tôi đang nhận được No 'Control-Control- Cho phép xuất xứ '. Tôi đã thử sử dụng node-http-proxy
và Vhosts Apache nhưng không có nhiều thành công, vui lòng xem đầy đủ lỗi và mã bên dưới.
XMLHttpRequest không thể tải localhost: 3000. Không có tiêu đề 'Kiểm soát truy cập-Cho phép-Xuất xứ' trên tài nguyên được yêu cầu. Do đó, nguồn gốc 'localhost: 8888' không được phép truy cập. "
// Api Using Node/Express
var express = require('express');
var app = express();
var contractors = [
{
"id": "1",
"name": "Joe Blogg",
"Weeks": 3,
"Photo": "1.png"
}
];
app.use(express.bodyParser());
app.get('/', function(req, res) {
res.json(contractors);
});
app.listen(process.env.PORT || 3000);
console.log('Server is running on Port 3000')
Mã góc
angular.module('contractorsApp', [])
.controller('ContractorsCtrl', function($scope, $http,$routeParams) {
$http.get('localhost:3000').then(function(response) {
var data = response.data;
$scope.contractors = data;
})
HTML
<body ng-app="contractorsApp">
<div ng-controller="ContractorsCtrl">
<ul>
<li ng-repeat="person in contractors">{{person.name}}</li>
</ul>
</div>
</body>