2017-06-02 5 views
2

Ich mache coderigniter App mit eckigen auf Client-Seite.So mein Beitrag funktioniert nicht jemand bitte helfen.http Post funktioniert nicht codeigniter, eckige App

Angular

$scope.posaljiKontroleru = function() { 
       $scope.prosek = {kalorije: 0.0, proteini: 0.0, uh: 0.0, masti: 0.0}; 
       $http({ 
        method: 'POST', 
        url: 'http://localhost/psi/Pravljenjejela/dodajBazi', 
        data: JSON.stringify($scope.prosek), 
        headers: {'Content-Type': 'application/json'} 

       }).success(function(data) { 

       }); 
      } 

CI Controler

public function dodajBazi(){ 
     echo $this->input->post('kalorije'); 

    } 

Antwort

1

können Sie es in differents Arten zu lösen.

Zuerst können Sie angeben, in dem Senden Header, form-urlencoded als Inhaltstyp

'Content-Type': 'application/x-www-form-urlencoded' 

Und nutzen URLSearchParams Objekt Anfrage params hinzuzufügen:

const params = new URLSearchParams(); 
for (let dataKey in data) { 
    if (data.hasOwnProperty(dataKey)) { 
    params.append(dataKey, data[dataKey]); 
    } 
} 

Zum Beispiel:

const params = new URLSearchParams(); 
params.append('kalorije', 0.0); 
params.append('proteini', 0.0); 
params.append('uh', 0.0); 
params.append('masti', 0.0); 

$http({ 
    method: 'POST', 
    url: 'http://localhost/psi/Pravljenjejela/dodajBazi', 
    data: params, 
    headers: {'Content-Type': 'application/x-www-form-urlencoded'} 
}).success(function(data) { 

Andernfalls, wenn Sie Parameter wie application/json senden möchten, müssen Sie Eingabe eingeben in $_POST var in Controller:

$_POST = file_get_contents("php://input");

+0

habe ich die erste Methode und ich habe nicht alles echo –

+0

Können Sie versuchen, 0.0 als Zeichenfolge zu senden? Ich ändere es als Antwort – Gerard

1
$http({ 
    url: "http://example.appspot.com/rest/app", 
    method: "POST", 
    data: {"kalorije": 0.0, "proteini": 0.0, "uh": 0.0, "masti": 0.0} 
}).success(function(data, status, headers, config) { 
    $scope.data = data; 
}).error(function(data, status, headers, config) { 
    $scope.status = status; 
}) 
+0

Wenn Sie eine Antwort posten, versuchen Sie, neben dem Code eine Erklärung zu geben. – apk

Verwandte Themen