当前位置: 首页 > 知识库问答 >
问题:

GeoServer没有使用OpenLayers为WFS返回正确的JSON。协议。脚本

曹华荣
2023-03-14

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

示例服务器以以下格式返回json功能:

OpenLayers.协议。script.registry.c1({"type":"FeatureCollection","特性":[{"type":"Feature","id":"cities.2","几何":...

My GeoServer以以下格式返回json功能:

{"type":"FeatureCollection","特性":[{"type":"Feature","id":"poi.1","几何":...

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

共有1个答案

段干俊茂
2023-03-14

找到了解决办法。默认情况下,服务器已禁用JSONP。设置环境变量ENABLE_JSONP=true并请求格式“text/javascript”将产生预期结果。仍然不确定为什么示例服务器返回正确的jsonp和请求的格式“json”。

 类似资料:
  • Geoserver2.5中的WFS实现存在严重错误。 我将数据集加载到SQL Server和PostGIS中。该数据集由几个点组成,采用本机EPSG:3857。 已为SQL Server连接设置Geometry_Columns表,并且在Geoserver设置中一切正常。 但是,尝试通过OpenLayers访问WFS: wfs1.0。0 |获取|修复| SQL Server WFS 1.0.0|GE

  • 我已经发布了一个层,其中包含大约76列(属性)。但是,当我调用WFS服务时,它没有返回所有属性(列),会遗漏一个名称为“id”的属性(列)。我使用的是oracle Spatial 11g数据库,其中包含地图数据。我是不是漏掉了什么?所有其他的事情都工作得很好,就像WMS服务一样。

  • 我目前在Openlayers中使用WFS,但是层的位置错误,如果我是对的,问题来自srsName,但是如何更改它? 以下是我的WFS代码: 几何图形应该位于国家的底部。我认为VectorSource有一个默认的srsname,但我不知道如何更改它。顺便说一句,在这个链接上:https://openlayers.org/en/latest/examples/vector-wfs.html他们展示了如

  • 问题内容: 我使用mysql 5.7 我想将联接表的结果串联到单列中。我使用包裹在函数中的函数。这是查询 列包含来自联接表的数据。数据已正确检索,但问题是列未转换为正确的JSON。 如您所见,最后有点“切”。 我也尝试过,但是现在它不能转换为正确的数组。它看起来像字符串太大,不适合列。有办法解决吗? 更新 问题必须出在不适合列的st大小中。我尝试从联接表中选择较少的列,并且它可以正常工作。也许有一

  • 问题内容: 我有2个DropDownList,例如Master-Slave。这是我的Default.aspx: 这是我的脚本: 和我的处理程序: 但没有要追加的内容。另外,我在firebug窗口中看到如下响应(当我从Master ddl中选择G2时): 对于更具体的视图,下图是当我在Master ddl中选择G3时,firebug窗口中的JSON选项卡: 我用这个新的脚本来更改脚本的成功方法: 当

  • 我正在使用OpenLayers 3.20开发一个Web应用程序。0,层来自GeoServer,链接到Oracle数据源。此应用程序主要使用ImageWMS层,也使用矢量层进行交互和编辑。问题是地图绘制速度非常慢,绘制了30000多条多段线,我想让这个过程更快:-) 所以我想知道最好的方法是什么。我找到了两种方法: 在ImageWMS层中更改我的矢量层,并仅在选择或编辑时手动加载所需的功能,但它要求