2

我正在尝试从 GeoServer 2.3.0 获取 json 功能。我已经复制了示例中的代码,它按预期工作。但是,当我将 url 设置为我的 GeoServer 和所需图层时,返回的格式不一样并导致此错误:“Uncaught SyntaxError: Unexpected token:”

示例服务器以这种格式返回 json 特征:

OpenLayers.Protocol.Script.registry.c1({"type":"FeatureCollection","features":[{"type":"Feature","id":"cities.2","geometry": ...

我的 GeoServer 以这种格式返回 json 特征:

{"type":"FeatureCollection","features":[{"type":"Feature","id":"poi.1","geometry": ...

该错误是由于我的 GeoServer 未返回包含在回调函数中的 json 引起的。这似乎是服务器配置问题,但作为 GeoServer 菜鸟,我一直无法找到正确的设置进行调整。

4

1 回答 1

3

发现了解决方案。服务器默认禁用 JSONP。设置环境变量 ENABLE_JSONP=true 并请求格式“text/javascript”会产生预期的结果。仍然不确定为什么示例服务器返回正确的 jsonp 格式为“json”。

于 2013-03-26T22:07:41.443 回答