2017-06-01 85 views
-4

如何從js ajax調用中調用此類方法?從javascript調用C#rest服務

我應該以不同的方式製作此方法嗎?

什麼是要調用的URL?

namespace X.Controllers 
{ 
    [RoutePrefix("api/user")] 
    public class UserController : ApiController 
    { 


     [Route("signup")] 
     [HttpPost] 
     public async Task<IHttpActionResult> SignUp(LoginModel model) 
     { 
      if (model == null || !model.IsValid()) 
      { 
       return Content(HttpStatusCode.BadRequest, new Error("Invalid email and/or password")); 
      } 
     } 
    } 
} 
+0

以下是要撥打的網址:https://www.google.com/?gws_rd=ssl#newwindow=1&q=how+to+call+a+rest+api+from+ja vascript&SPF = 1496337926161 –

回答

1

的網址是api/user/signup(RoutePrefix +路由),你需要將LoginModel特性傳遞給它。

您可以用jQuery調用它在JavaScript這樣的:

$.ajax({ 
    url:"api/user/signup", 
    type:"POST", 
    data:data, 
}); 
0

如果要執行與核心javacript這個動作,你的代碼看起來就像這樣:

<button type="submit" onclick="UserAction()">Search</button> 

function PostData() 
{ 
    var xhttp = new XMLHttpRequest(); 
    xhttp.open("POST", "api_url_here", false); //Method Type 
    xhttp.setRequestHeader("Content-type", "application/json"); 
    xhttp.send(); 
    var response = JSON.parse(xhttp.responseText); 
} 

,並與jQuery :

$.ajax({ 
    url: "api_url", 
    type: "POST", //Method Type 
    data: DATA//Data to post 
});