【发布时间】:2020-06-25 04:51:11
【问题描述】:
我有一个ajax请求,像这样:
var data = {
REQUEST: 'GetFeatureInfo',
SERVICE: 'WMS',
VERSION: '1.1.1',
LAYERS: layerName,
STYLES: '',
FORMAT: 'image/png',
INFO_FORMAT:'application/json',
BGCOLOR: '0xFFFFFF',
TRANSPARENT: 'TRUE',
SRS: 'EPSG:' + mapSRID,
BBOX: xmin + "," + ymin + "," + xmax + "," + ymax,
WIDTH: map.width,
HEIGHT: map.height,
QUERY_LAYERS: layerName,
X: screenPoint.x.toFixed(0),
Y: screenPoint.y.toFixed(0)
};
$.ajax({
type: 'GET',
url: url,
data: data,
dataType: "application/json",
complete: function (data) {
callBack(data);
}
});
}
我想通过使用 http 客户端 get 方法转换为 angular。我该怎么做。
我的解决方案但回复:ok: false
getInfo() {
const params = {
SERVICE: 'WMS',
VERSION: '1.1.1',
...
};
this.http.get<any>('http://localhost:8080/geoserver/topp/wms', params).subscribe(data => {
console.log(data);
});
}
为了更清楚,我想在 Angular 8 中将 URL 获取请求转换为 http 客户端获取方法请求:
http://localhost:8080/geoserver/wms?service=wms&version=1.1.1&request=GetCapabilities
【问题讨论】:
-
到目前为止你尝试过什么?在 Angular 中发出 http 请求非常有据可查。您在哪个具体部分苦苦挣扎?
-
我试过了,但是当我使用 Postman 时它工作得很好,但是当我使用 get 方法时,状态返回是 200 并且 ok 是 false。
-
什么你试过了吗?
-
这听起来与您的问题非常相关
-
const params = { 'key':'value' }; this.http.get
('localhost:8080/geoserver/topp/wms', params).subscribe(data => { console.log(data); });
标签: ajax angular httpclient angular8