小编Ati*_*nux的帖子

使用node.js表示服务器的Backbone.js pushState路由的帐户?

pushState Backbone.js版本0.5更新引入了支持.

骨干文档:

请注意,使用真实URL要求您的Web服务器能够正确呈现这些页面,因此也需要进行后端更改.例如,如果您的路径为/ documents/100,则如果浏览器直接访问该网址,则您的网络服务器必须能够提供该网页.对于完整的搜索引擎可抓取性,最好让服务器为页面生成完整的HTML ...但如果它是一个Web应用程序,只需呈现与根URL相同的内容,并使用Backbone填充其余内容视图和JavaScript工作正常.

这可能看起来像一个微不足道的问题,但我想知道是否有人可以帮助我使用一些特定的(最好是快速的)node.js服务器代码.我该如何处理这些路线?我有点困惑.

以下是我的应用程序路由器模块的相关摘录:

var Router = Backbone.Router.extend({
    routes: {
        '': 'index',
        'about': 'about'
    },
    index: function() {
        indexView.render();
    },
    about: function() {
        aboutView.render();
    }
});

var initialize = function() {
    var router = new Router;
    Backbone.history.start({ pushState: true });
}

return {
    initialize: initialize
};
Run Code Online (Sandbox Code Playgroud)

我这里只有一个顶级路线和一个关于页面的路线.那么我应该如何设置一个允许我导航到的节点服务器:

domain.com
domain.com/about
domain.com/#/about // <- for browsers that don't support pushState
Run Code Online (Sandbox Code Playgroud)

javascript node.js express backbone.js pushstate

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

使用Express.js和jQuery.ajax进行CORS

我使用带有以下标头的服务器的express.js:

x-powered-by: Express
connection: keep-alive
content-length: 2
content-type: application/json; charset=utf-8
access-control-allow-methods: GET,PUT,POST,DELETE
access-control-allow-origin: *
access-control-allow-headers: x-requested-with
Run Code Online (Sandbox Code Playgroud)

我打电话res.header允许CORS:

res.header("Access-Control-Allow-Origin:", "*");
res.header("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE");  
res.header("Access-Control-Allow-Headers", "x-requested-with");
Run Code Online (Sandbox Code Playgroud)

您可以在这里进行测试:http : //my-api.rs.af.cm/api/products

对于我的前端,我使用jsbin,并使用以下命令调用服务器$.ajaxhttp : //jsbin.com/apizez/37/edit

结果在这里:http : //jsbin.com/apizez/37

您可以查看JS控制台,您会看到此错误:

XMLHttpRequest cannot load http://my-api.rs.af.cm/api/products. Origin http://jsbin.com is not allowed by Access-Control-Allow-Origin.
Run Code Online (Sandbox Code Playgroud)

我在CORS上阅读了所有其他答案,但我不想使用easyXDM。

ajax jquery node.js cors express

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

标签 统计

express ×2

node.js ×2

ajax ×1

backbone.js ×1

cors ×1

javascript ×1

jquery ×1

pushstate ×1