Мне нужно сделать запрос POST, чтобы получить некоторые функции из слоя на геосервере.Я попробовал запрос в postman
, который работает нормально, но он не будет работать, когда я использую angularjs $http
для выполнения запроса.
Есть идеи, как это исправить?или в чем разница между $ http и angular's angular, могу ли я изменить некоторые настройки, чтобы этот код работал?
Мой код запроса выглядит так:
var formData = new FormData();
formData.append('service', 'WFS');
formData.append('version', '1.0.0');
formData.append('request', 'GetFeature');
formData.append('typeName', 'someLayer');
formData.append('CQL_FILTER', 'someFilter');
formData.append('outputFormat', 'CSV');
return $http({
method: 'POST',
url: 'someurl',
transformRequest: angular.identity,
headers: {
'Content-Type': undefined,
},
data: formData
});
И мой ответ выглядит такэто:
<?xml version="1.0" encoding="UTF-8"?><ows:ExceptionReport xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ows="http://www.opengis.net/ows" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0.0" xsi:schemaLocation="http://www.opengis.net/ows http://192.168.0.129:8081/geoserver/schemas/ows/1.0.0/owsExceptionReport.xsd">
<ows:Exception exceptionCode="NoApplicableCode">
<ows:ExceptionText>java.lang.ClassCastException: org.apache.commons.fileupload.disk.DiskFileItem cannot be cast to [Ljava.lang.String;
org.apache.commons.fileupload.disk.DiskFileItem cannot be cast to [Ljava.lang.String;</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>
Я использую angularjs 1.4.2