2017-07-04 37 views
1

私が書いたAPIを呼び出そうとしていますが、$.ajaxでPOSTメソッドを呼び出そうとすると、エラー:WebAPIでPOST呼び出し中に要求されたリソースがHTTPメソッド 'GET'をサポートしていません

The requested resource does not support http method 'GET"

私はポストマン経由で呼び出すしようとすると、私は望ましい結果を得ることができます。その上で、同じメソッドの$.ajaxは、すべてのコールのために動作します。ここに私のAPIメソッドは、

[HttpPost] 
[Route("api/Ticket/GetTicketsAssignedToTechnician/")]   
public List<Ticket> GetTicketsAssignedToTechnician([FromBody]string technicianEmail) 
{ 
    return dbManager.GetTicketsByAssignedTechnician(technicianEmail); 
} 
postData: function (serviceURL, parameterValue, success, failure, error) { 
    $.ajax({ 
     url: serviceURL, 
     method: "POST", 
     data: JSON.stringify(parameterValue), 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: success, 
     failure: failure, 
     error: error 
    }); 
} 
ですここ

$.ajaxの呼び出しです:

Utility.postData(Dashboard.hostURL + "Ticket/GetTicketsAssignedToTechnician/", email, function(data) { 
    console.log(data); 
}, function(data) { 
    console.log("failure." + data.responseText); 
}, function(data) { 
    console.log("Error." + data.responseText); 
}); 

答えて

2

あなたは$.ajaxオプションで間違ったプロパティ名を使用しているので、問題があります。それはtypeで、methodではありません。したがって、jQueryはデフォルトのGETを使用します。

$.ajax({ 
    url: serviceURL, 
    type: "POST", // < change here 
    data: parameterValue, // no need to JSON.stringify here, jQuery will do it for you 
    // other options... 
}); 
+0

以下のように実行しようとありがとうございました。出来た。 –

0

 $http({ 

      method: "POST", 
      url: serviceURL, 
      contentType: "application/json; charset=utf-8", 
      data: JSON.stringify(parameterValue), 
      dataType: 'JSON' 
     }) 
関連する問題