Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 301重定向阻止Openshift上的CORS选项请求_Javascript_Backbone.js_Cors_Openshift - Fatal编程技术网

Javascript 301重定向阻止Openshift上的CORS选项请求

Javascript 301重定向阻止Openshift上的CORS选项请求,javascript,backbone.js,cors,openshift,Javascript,Backbone.js,Cors,Openshift,我正在用Laravel 4编写一个RESTful api,它将被Backbone.js应用程序使用 当我使用GIT部署代码时,我收到一条消息,上面说: 选择应用程序目录“public/”作为DocumentRoot 在使用Backbone.js应用程序时,PUT、GET和DELETE请求得到了适当的处理,但飞行前请求(选项)失败,因为我尝试发出POST请求时重定向: 请求方法:选项 状态代码:301已永久移动 控制台上出现此错误时: XMLHttpRequest无法加载http://MY-DOM

我正在用Laravel 4编写一个RESTful api,它将被Backbone.js应用程序使用

当我使用GIT部署代码时,我收到一条消息,上面说:

选择应用程序目录“public/”作为DocumentRoot

在使用Backbone.js应用程序时,PUT、GET和DELETE请求得到了适当的处理,但飞行前请求(选项)失败,因为我尝试发出POST请求时重定向:

请求方法:选项
状态代码:301已永久移动

控制台上出现此错误时:

XMLHttpRequest无法加载
http://MY-DOMAIN.rhcloud.com/projetos/
。请求被重定向到
'http://MY-DOMAIN.rhcloud.com/projetos“
,这不允许用于需要飞行前的跨源请求

这是因为CORS政策:

如果响应的HTTP状态代码为301、302、303、307或308
应用缓存和网络错误步骤

我怎样才能克服这个问题?有没有办法绕过或配置Openshift重定向

>>编辑

我在Chrome javascript控制台上遇到这个错误,因为我的主干应用程序仍处于开发阶段。下面是复制问题的步骤:

我有一个全局名称空间“App”,我的项目是这样组织的:App.Models、App.Collections等等

模型

App.Models.Projeto = Backbone.Model.extend({

    defaults : {
        codigo      : '',
        titulo      : '',
        url         : '',
        status      : ''
    }

});
收藏

App.Collections.Projetos = Backbone.Collection.extend({

    model : App.Models.Projeto,

    url : 'http://MY-DOMAIN.rhcloud.com/projetos'

});
在控制台上

var projetos = new App.Collections.Projetos;

projetos.create({
    titulo : "blablabla",
    codigo : "12jk4h3",
    url    : "example.com",
    status : 0
});
我能够获取、编辑和删除集合中的模型。我唯一不能做的就是创建一个新的

最后一件事,我重定向到的URL是相同的URL,但结尾没有“/”


因此,即使集合中的“url”属性设置为
http://MY-DOMAIN.rhcloud.com/projetos
主干似乎添加了一个“/”,然后在服务器中,它会被重定向。

欢迎来到Stack Overflow,感谢您花时间写一个格式良好的问题!但是,我们可以看到导致问题的代码吗?您可以获取响应试图重定向到的URL,并将请求直接发送到该URL吗?URL可以在
位置
响应标题中找到。嘿,伙计们,谢谢你们的快速回复!我已经添加了您要求的详细信息,希望我能说清楚,对任何英语错误表示抱歉,这不是我的主要语言。