2016-06-02 4 views
1

ich diese Web-api-Controller haben:Postbote params nicht auf dem Web-api-Controller gesendet

public class LoginController : ApiController 
    { 
     private mw2devnew15Entities db = new mw2devnew15Entities(); 

     [System.Web.Http.HttpGet] 
     public string Post() 
     { 
      string authenticationToken = ""; 
      return authenticationToken; 
     } 


     [System.Web.Http.AcceptVerbs("GET", "POST")] 
     public HttpResponseMessage Post(JObject data) 
     { 
      dynamic json = data; 

      LoginForm loginF = new LoginForm(); 
      loginF.username = json.username; 
      loginF.password = json.password; 

      return Request.CreateResponse(HttpStatusCode.OK); 
     } 
    } 

ich in der Lage bin richtig mit diesem Ajax-Aufruf schreiben:

jQuery.ajax({ 
      type: "POST", 
      url: "http://localhost:5832/api/Login", 
      data: JSON.stringify({ username: 'joep11aul1234', password: '1212213' }), 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (data) { 
       alert(data); 
      } 
     }); 

Aber wenn ich versuche, Um Postman zu verwenden, um POST-Aufruf zu platzieren, ist das JObject Null.

enter image description here

Jede Idee, warum?

Antwort

2

Mit Postman reproduzieren Sie nicht die gleiche Anfrage wie Ihr JavaScript-Code, seit Sie die Parameter im Abfrage-String gepostet haben. Was Sie shoud zu tun ist, anstatt etwas wie folgt aus:

hinzufügen Inhaltstyp-Header mit dem Wert von application/json:

enter image description here

und für Ihre Anfrage Körper raw wählen und dann JSON hinzufügen:

enter image description here

Dies wird die folgende Anfrage als Ihr JavaScript-Code senden:

POST /api/Login HTTP/1.1 
Host: localhost:5832 
Content-Type: application/json 
Cache-Control: no-cache 
Postman-Token: 4bf25ded-7548-77f9-3389-fa16a5d50087 

{ "username": "joep11aul1234", "password": "1212213" } 
+1

Danke! Sie haben mir sehr geholfen. Ich wünsche dir einen schönen Tag – Laziale

+0

@Laziale Froh ich könnte helfen. Viel Spaß beim Programmieren :) – Nasreddine

Verwandte Themen