小编use*_*103的帖子

否'Access-Control-Allow-Origin' - 节点/ Apache端口问题

我使用Node/Express创建了一个小API并尝试使用Angularjs来提取数据,但是当我的html页面在localhost:8888上运行apache并且节点API在端口3000上侦听时,我得到了No'Access-Control-允许来源.我尝试使用node-http-proxy和Vhosts Apache但没有取得多大成功,请参阅下面的完整错误和代码.

"XMLHttpRequest无法加载localhost:3000.请求的资源上没有'Access-Control-Allow-Origin'标头.因此不允许来自"localhost:8888"."

// 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')
Run Code Online (Sandbox Code Playgroud)

rest node.js cors express angularjs

230
推荐指数
10
解决办法
28万
查看次数

对象#<Object>的属性'$'不是_.extend._ensureElement的函数

我试图通过创建一个View来输出骨干模型的一些dafault值,但节点显示错误"对象#的属性'$'不是_.extend._ensureElement的函数".我可以直接显示模型中的默认值,就像我在下面的代码中所做的那样但不是通过使用视图.为了显示一个例子,我已经注释掉了// myView = new firstView(); 所以你可以看到输出但很快我删除了我得到错误的评论.请让我知道缺少什么,我做错了什么.已经尝试在$(function(){})中包装代码,但没有运气.

     express = require('express');
     $ = require('jQuery');
     _ = require('underscore');
     Backbone = require('Backbone');
     app = express();

     app.use(express.static(__dirname + ''));
     app.use(express.bodyParser());
     app.listen(process.env.PORT || 3000);

     Person = Backbone.Model.extend({
        defaults: {
            'name': 'Joe Blog',
            'job': 'Web Developer'
        }
     });

     firstPerson = new Person();
     firstView = Backbone.View.extend({

        initialize: function() {
            this.render();
        },
        render: function() {
            console.log(firstPerson.get('job'));
            return this;

        }
     })

     //myView = new firstView();
     console.log(firstPerson.get('name'));
Run Code Online (Sandbox Code Playgroud)

javascript jquery node.js backbone.js

3
推荐指数
1
解决办法
1905
查看次数

在Prototype上使用addEventListener

我试图通过点击addEventListener来破坏Prototype的结果,但结果显示甚至没有点击.

<div id="box">Your Item:</div>

<button id="myBtn">Buy</button>

<script type="text/javascript">
function Machine(n,p){
this.name = n;
this.price = p;
}


Machine.prototype.Dispatch = function(){
var container = document.getElementById('box');
container.innerHTML = this.name + " " + this.price;
}
var Drink = new Machine("coke",80);
var Handle = document.getElementById('myBtn');
Handle.addEventListener("click",Drink.Dispatch(),false);
</script>
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/9trqK/

javascript javascript-events

1
推荐指数
1
解决办法
7438
查看次数