【问题标题】:Backbone.js site across different ports跨不同端口的 Backbone.js 站点
【发布时间】:2014-07-19 05:43:10
【问题描述】:

我有一个主干站点,我正在尝试启动和运行。我想提供给它的 API 位于同一台服务器上,但位于不同的端口(端口 8080)上。

当我尝试访问 API 时,我收到有关“同源策略”等的错误,但由于它们位于同一台服务器上,我不确定自己做错了什么。

如何使用我的模型从 API 访问数据?

define(function (require) {

    "use strict";

    var $           = require('jquery'),
        Backbone    = require('backbone'),
        api         = "http://localhost:8080/api/v1/",

        Candidate = Backbone.Model.extend({
            urlRoot: api + "profiles/",
            idAttribute: 'password',

            initialize: function () {
                console.log('Candidate initialized');
            },

            validate: function (attributes) {
                console.log('validate');
                console.log(attributes);
            },
        }),

        CandidateCollection = Backbone.Collection.extend({
            model: Candidate,
            url: api + "profiles/",
        });

    return {
        Candidate: Candidate,
        CandidateCollection: CandidateCollection
    };
});

【问题讨论】:

标签: javascript backbone.js


【解决方案1】:

您能否添加 apache 并为所有路由到 http://localhost:8080/api/api 执行 ProxyPass 规则

ProxyPass /api http://localhost:8080/api
ProxyPassReverse /api http://localhost:8080/api

【讨论】:

  • NGINX 应该有类似的配置。恕我直言,这是处理您的要求的正确地方。否则,您将不得不查找 CORS 支持并应用正确的标头以解决跨域问题
猜你喜欢
  • 1970-01-01
  • 2013-12-08
  • 2015-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-28
相关资源
最近更新 更多