Почему отправка параметров в Post работает как GET

Я пытаюсь сделать HTTP-запрос к файлу .php на сервере, все, что я делаю, это сделать такой запрос

$http({
            url: 'http://localhost/sebha/login.php',
            method: 'POST',
            params: paramss
        }).success(function(response) {
            if (response.pk) {
                $state.go('tab.home');
            } else {
                console.log('error');
            }
        });

но когда я пытался получить эти параметры на серверной части, я не мог получить их из массива $_POST, поэтому, когда я проверил сеть в chrome, чтобы проверить запрос, я обнаружил, что URL-адрес запроса отображается так, однако это запрос POST не получить

http://localhost/sebha/login.php?password=admin&username=admin

я просто хочу знать, почему параметры отправляются в URL-адресе точно так же, как запрос GET, и как я заставляю его работать.


person Mohamed A. Shebl    schedule 06.12.2016    source источник


Ответы (1)


params предназначен для запросов GET и будет кодировать URL-адрес — используйте параметр data:

 $http({
        url: 'http://localhost/sebha/login.php',
        method: 'POST',
        data: paramss
    }).success(function(response) {
        if (response.pk) {
            $state.go('tab.home');
        } else {
            console.log('error');
        }
    });
person tymeJV    schedule 06.12.2016
comment
это сработало, и теперь я вижу параметры в полезной нагрузке запроса, но теперь, когда я var_dump $_POST в файле php, он дает мне пустой массив! - person Mohamed A. Shebl; 07.12.2016