2014-10-06 4 views
0

У меня есть следующие JQuery:вызова Web Api действие с JQuery

$(document).ready(function() { 
    $("#send").on("click", function() { 
    $.ajax({ 
     url: 'http://localhost:3484/api/mail/send/', 
     type: 'POST', 
     dataType: 'text', 
     data: '[email protected]' 
    }); 
    }); 
}); 

И действие Web API является:

[Route("api/mail/send"), HttpPost] 
public void Send([FromBody]String email) { 
} 

Действия называется, но электронная почта является недействительной.

Что мне не хватает?

+0

Но я ser тип данных как текст. Разве этого недостаточно? –

ответ

1

Это должно работать

$(document).ready(function() { 

    $("#send").on("click", function() { 
    var data={email :'[email protected]'}; 

    $.ajax({ 
     url: 'http://localhost:3484/api/mail/send/', 
     type: 'POST', 
     contentType : 'application/json', 
     data: JSON.stringify(data) 
    }); 

    }); 

}); 
0
$(document).ready(function() { 
    $("#send").on("click", function() { 
    $.ajax({ 
     url: 'http://localhost:3484/api/mail/send/', 
     type: 'POST', 
     dataType: 'text', 
     data: { email: `[email protected]' }, 
    }); 
    }); 
}); 

data должен быть JSON объект. Альтернатива для $.ajax: $.post. У этого есть документация здесь: http://api.jquery.com/jquery.post/

Смежные вопросы