Firefox ArcGIS服务器REST API-POST选项飞行前请求:不允许使用405方法
我正在基于ArcGis服务器构建一个GIS web应用程序,但Firefox浏览器有问题。 我正在JS中开发一个GIS web应用程序,允许用户编辑要素图层(注意:在没有ESRI ArcGis API for JS的情况下调用ArcGis) 在ArcGIS服务器中创建新记录的HTTP POST请求如下: 正如文档所述(),可以 永久更改系统状态(添加、更新、删除)属于仅发布操作。否则,将向客户端发送错误代码为405(不允许使用方法)的适当错误消息 在Chrome和IE中,为了运行此POST请求并避免CORS问题,我使用了一个代理。 相反,为了确定实际请求是否可以安全发送,首先“预飞”POST请求通过OPTIONS方法向另一个域上的资源发送HTTP请求 因此,考虑到ArcGIS服务器只接受添加功能的POST请求,并且考虑到Firefox首先发送选项方法,我在使用Firefox编辑功能层时遇到了一个问题。 事实上,以下要求: 服务器/arcgis/rest/services/layerName/FeatureServer/0/addFeatures 返回错误代码405(不允许使用方法)Firefox ArcGIS服务器REST API-POST选项飞行前请求:不允许使用405方法,firefox,http-post,esri,arcgis-server,preflight,Firefox,Http Post,Esri,Arcgis Server,Preflight,我正在基于ArcGis服务器构建一个GIS web应用程序,但Firefox浏览器有问题。 我正在JS中开发一个GIS web应用程序,允许用户编辑要素图层(注意:在没有ESRI ArcGis API for JS的情况下调用ArcGis) 在ArcGIS服务器中创建新记录的HTTP POST请求如下: 正如文档所述(),可以 永久更改系统状态(添加、更新、删除)属于仅发布操作。否则,将向客户端发送错误代码为405(不允许使用方法)的适当错误消息 在Chrome和IE中,为了运行此POST请求
是否有解决此问题的办法或方法?特别是考虑到可能有一天,出于安全原因,其他浏览器可能会实现此选项请求。有4种方法可以解决您的问题,每种方法都取决于您的服务器体系结构。(第一种方法只是配置服务器,但另一种方法是使用现在支持.NET、PHP和Java的)
- 试着去做
- 只需按照中的步骤操作即可
- 然后按照中的步骤进行操作
- 按照中的步骤操作
- 完成代理页面设置后,需要编辑代理页面代码以接受和回复飞行前请求。请看一看
我不知道为什么,但这在我们的应用程序中起了作用 我们的应用程序是用react编写的,并且依赖于一个单独的后端API
除非我们定义了
REACT\u-APP\u-API\u-host
和REACT\u-APP\u-API\u-protocol
,否则我们会从ESRI基础图中获得这些405。如果您使用的是JS API,这可能会得到处理,但由于您没有,这更像是一个纯粹的IT问题,在StackOverflow中可能会得到更好的解决。这个问题似乎与arcgis server有关,因此对于mne来说,它与GIS相关,访问控制允许源:*,作为访问控制允许方法和访问控制允许头传递的是什么?