Метод получения Angularjs $http не отправляет никаких параметров

Я создал jsfiddle, где я пытаюсь выполнить http-получение с использованием $http при нажатии на тестовую кнопку. Синтаксис и структура $http.get кажутся мне правильными, но он не отправляет выбранные параметры (запрос строка {data:$scope.newuser}) в URL-адресе.

вот скрипка:

jsfiddle.net/8sZLs/2/

И на стороне php я пробовал, но не показывал опубликованные значения


person RONE    schedule 26.03.2014    source источник


Ответы (3)


Вы не можете отправить объект с помощью get, вам нужно сделать почтовый запрос следующим образом.

 $http({
   url: 'request-url',
   method: "POST",
   data: { 'message' : message }
})

Как предложил @YauheniLeichanok, другим способом является использование параметров запроса, params из $http.get, в этом случае передаваемые вами строки будут выглядеть как: ?key1=value1&key2=value2

person anvarik    schedule 26.03.2014
comment
Как вариант - вы также можете использовать «параметры» вместо «данные», чтобы добавить свои данные в строку запроса. Это будет работать для GET. - person Yauheni Leichanok; 26.03.2014
comment
@anvarik, можете ли вы сказать мне, как получить это на стороне php ‹?php print_r($_POST['message']); ?›, не показывая значения - person RONE; 26.03.2014
comment
@RaviMone, я не знаком с PHP, но просто использую следующий угловой код: $http.post('http://' + host + ':' + port + '/echo/html', $scope.newuser) он должен опубликовать вашего пользователя - person anvarik; 26.03.2014

Замените строку $http.get на эту

$http.get('/echo/html/', {params:$scope.newuser});
person przno    schedule 26.03.2014

О том, как получить значения на стороне сервера PHP.

Приходится использовать стандартный ввод php

$data = file_get_contents("php://input");
$objData = json_decode($data);
person RONE    schedule 26.03.2014