Ho una strega ASP.NET WEB-API 2
applicazione ha bisogno di avere un metodo che accetta un POST
JOSN
string
con struttura sconosciuta da javascript
.
I metodi abilitati cors
e e GET
funzionano correttamente, tuttavia quando si invia JSON
dal client, il parametro del metodo di api è sempre null
.
Questo è il mio metodo api
:Messaggio JSON stringa WEB API
//parameters i tried:
//[FromBody]string model
//[FromBody]dynamic model
//dynamic model
public HttpResponseMessage Post(string model)
{
return new HttpResponseMessage()
{
Content = new StringContent("POST: Test message: " + model)
};
}
e il mio metodo cliente:
function sendRequest()
{
var Test = {"Name":"some name"};
var method = $('#method').val();
$.ajax({
type: method,
url: serviceUrl,
contentType: 'application/json; charset=utf-8',
data: JSON.stringify(Test)
}).done(function (data)
{
$('#value1').text(data);
}).error(function (jqXHR, textStatus, errorThrown)
{
$('#value1').text(jqXHR.responseText || textStatus);
});
}
Quindi la domanda è come posso postare uno sconosciuto JSON string
da javascript
e lo accetto come una stringa nel mio metodo api
?
prova 'data: {modello JSON.stringify (Test)}' –
questo mi dà una 'risposta alla richiesta di verifica preliminare non passa di controllo di controllo di accesso: accesso No' L'intestazione -Control-Allow-Origin 'è presente sulla risorsa richiesta' messaggio di errore – Yoav
Do not JSON.stringify. Usa dati: {valore: prova} e nel controller (test stringa [FromBody]). Questo dovrebbe restituire una stringa. –