2016-11-11 5 views
0

Ich versuche, Daten an einen Webdienst zu senden, aber die Daten fehlen.

Hier ist der Code

 var product = { 
      CategoryID: 'test' 
     }; 

     $http({ 
      url: URL, 
      method: "POST", 
      data: product, 
      headers: {'Content-Type': 'application/x-www-form-urlencoded'} 
     }) 
     .success(function(data,status,headers,config) { 
      console.log(data); 
     }) 
     .error(function(data,status,headers,config) { 
      console.log(data); 
     }); 

Die POST-Daten auf dem Server ist leer.

Ich habe Access-Control-Allow-Origin-, Access-Control-Allow-MethodeAccess-Control-Allow-Headers und Access-Control-Allow-Header auf dem Server eingerichtet.

Diese API funktioniert gut, wenn durch Postman getestet

+0

Sie Ihr Browser-Debugger, um zu sehen, was tatsächlich gesendet wird, und vergleichen Sie das mit dem, was mit Postman gesendet wird. Es gibt offensichtlich einen Unterschied irgendwo, aber Sie müssen derjenige sein, der es findet. – Igor

+0

@Igor Ich habe und es scheint keinen Unterschied zu geben. Die ionische App hat sogar eine Inhaltslänge, die nicht null ist. – SunMan

+0

Können Sie uns mehr darüber erzählen, wie Sie Daten auf der Serverseite abrufen? – erwan

Antwort

0

Für Ihr Problem versuchen, einen Blick auf diese ein How do I POST urlencoded form data with $http in AngularJS? - Sie wahrscheinlich benötigen, um Ihre Anfrage gesendet in über $http Dienst mit der erforderlichen Inhaltstyp zu transformieren.

+0

Vielen Dank, dass geholfen hat. – SunMan

+0

Ich musste die Daten ändern, Daten: "CategoryID =" + encodeURLComponent (CategoryID), – SunMan