处理 WMS 请求
问题来源
在请求影像数据/3dtiles数据/地形数据
时, 服务器文件中心
对于访问文件的请求需要加token
,能否在全局编辑以上请求的 url, 比如说原始请求为:
http://data1.mars3d.cn/terrain/7/204/89.terrain
期望能编辑为:
${window.origin}/terrain/7/204/89.terrain&access_token="string"
// 或
${window.origin}/api/files?fileName="string"
解决方案 - 火星科技/木遥
js
// 处理wms请求
Cesium.Resource.ReplaceUrl = function (url) {
if (this._url.startsWith("//server.kaka.cn/geoserver/mars/wms")) {
return url.replaceAll("string_src", "string_dest");
} else {
return url;
}
};
ceisum
在发送不同请求时对Url
的处理不同,需要区分处理。
解决方案 - April 10,2024
js
const proxy = new Cesium.DefaultProxy("");
proxy.getURL = (url: string) => {
if (url.includes("/string_src")) {
return url.replaceAll("string_src", "string_dest");
}
}
return url;
};
const m_url = modelUrl;
const bimOptions = {
name: '3dtiles_model',
url: new Cesium.Resource({
url: m_url,
proxy
}),
}