Próbuję wysłać obiekt jako JSON do mojego webservice w Kolbie, który oczekuje JSON w danych żądania.Żądanie kątowe JS POST nie wysyłające danych JSON
Testowałem usługę ręcznie, wysyłając dane JSON i działa dobrze. Jednak, gdy próbuję utworzyć żądanie HTTP POST przez kontroler kątowy, serwer WWW wysyła do mnie komunikat, że nie otrzymał JSON.
Kiedy sprawdzać nagłówki żądania w Chrome wydaje się, że dane nie są przesyłane w formacie JSON, ale regularnych par klucz/wartość nawet przez Content Type jest ustawiony na application/json
Request Method:POST
Status Code:200 OK
Request Headersview source
Accept:application/json, text/plain, */*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:49
Content-Type:application/json;charset=UTF-8
DNT:1
Host:localhost:5000
Origin:http://localhost:5000
Referer:http://localhost:5000/
User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36
X-Requested-With:XMLHttpRequest
Request Payload
application=AirFare&d1=10-APR-2013&d2=14-APR-2013
Jeśli widziałeś ostatnia linia poniżej Request Payload, możesz zobaczyć dane nie w formacie JSON.
To wywołanie HTTP POST w moim kontrolera kątowej:
$http({
url: '/user_to_itsr',
method: "POST",
data: {application:app, from:d1, to:d2},
headers: {'Content-Type': 'application/json'}
}).success(function (data, status, headers, config) {
$scope.users = data.users; // assign $scope.persons here as promise is resolved here
}).error(function (data, status, headers, config) {
$scope.status = status + ' ' + headers;
});
};
jestem wysyłania danych jako obiekt {} ale starałem się wysłać go po szeregowania przez JSON.stringify jednak nic zrobić wydaje się wysłać JSON na serwer.
Naprawdę doceniam, że ktoś może pomóc.
$ http POST wysyła dane domyślnie jako kodowane JSON. Spróbuj usunąć '' 'headers''' z twojego połączenia $ http.Możliwe, że nadpisujesz domyślne nagłówki, co prowadzi do nieoczekiwanych wyników na serwerze. Możesz również opublikować swoje nagłówki żądań, aby dokładnie sprawdzić. – Narretz
@smartexpert znalazłeś rozwiązanie? Mam ten sam problem, próbuję dużo, aby znaleźć rozwiązanie, ale nie mogę, jeśli znajdziesz rozwiązanie, które mi pomoże. dziękuje dużo – pejman