我是一个初学者,使用ember-cli v0.0.47并努力让http-proxy工作.
我正在尝试向远程OGC CSW服务器发出ajax请求.该请求是具有一些附加参数的普通HTTP GET请求,并且预期响应是XML文档.
由于我正在做一个跨源请求,我决定使用服务器代理,以避免处理CORS的东西.
我使用ember-cli生成代理配置:
ember-cli generate http-proxy geoland2 http://geoland2.meteo.pt
Run Code Online (Sandbox Code Playgroud)
在我的控制器中,我定义了一个使用jquery.ajax与服务器通信的"搜索"操作:
export default Ember.Controller.extend({
actions: {
search: function() {
Ember.$.ajax({
url: 'geoland2/geonetwork/srv/eng/csw',
contentType: 'application/xml',
crossDomain: true,
xhrFields: {
withCredentials: true
},
dataType: 'xml',
data: {
service: 'CSW',
version: '2.0.2',
request: 'GetCapabilities'
},
}).then(
function(data) {
alert(data);
Ember.$('.results').html(data);
},
function(jqXHR, textStatus, errorThrown) {
Ember.$('.results').html(jqXHR.status + ' ' + errorThrown + ' - ' + jqXHR.responseText);
}
);
}
}
});
Run Code Online (Sandbox Code Playgroud)
现在当这个动作被触发时,我会期待这个动作
geoland2/geonetwork/srv/eng/csw
Run Code Online (Sandbox Code Playgroud)
将由ember-cli的服务器代理并发送给
http://geoland2.meteo.pt/geonetwork/srv/eng/csw?service=CSW&version=2.0.2&request=GetCapabilitites
Run Code Online (Sandbox Code Playgroud)
这种假设应该是正确的吗?
实际上,我看到的是请求根本没有代理.ember应用程序尝试联系
http://localhost:4200/geoland2/geonetwork/srv/eng/csw?service=CSW&version=2.0.2&request=GetCapabilitites
Run Code Online (Sandbox Code Playgroud)
它失败并出现404 HTTP错误,因为指定的资源显然不可用. …
我正在使用ember-cli v0.0.47,我希望能够让brocolli在触发构建时忽略某些文件的更改.
我正在使用vim作为创作工具,并且我将其配置为在编辑器失去焦点时保存所有打开的文件(这包括交换和撤消文件).这有一个令人遗憾的副作用,导致我的ember-cli项目进行了大量不必要的重建,因为brocolli检测到文件已被更改并继续重建.
因此,我希望能够以某种方式告诉brocolli在某些文件被更改时不会触发项目的重建.有没有办法实现这个目标?