Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
PostAjaxService-exemplet visar hur du använder Windows Communication Foundation (WCF) för att skapa en ASP.NET Asynkron JavaScript- och XML-tjänst (AJAX) som använder HTTP POST. En AJAX-tjänst är en som du kan komma åt med hjälp av grundläggande JavaScript-kod från en webbläsarklient. Det här exemplet bygger på basic AJAX-tjänstexemplet . den enda skillnaden mellan de två exemplen är användningen av HTTP POST i stället för HTTP GET.
AJAX-stöd i Windows Communication Foundation (WCF) är optimerat för användning med ASP.NET AJAX via ScriptManager
kontrollen. Ett exempel på hur du använder WCF med ASP.NET AJAX finns i Ajax-exempel.
Anmärkning
Installationsproceduren och bygginstruktionerna för det här exemplet finns i slutet av det här avsnittet.
Tjänsten i följande exempel är en WCF-tjänst utan AJAX-specifik kod.
WebInvokeAttribute Om attributet tillämpas på en åtgärd, eller WebGetAttribute om attributet inte tillämpas, används standard-HTTP-verbet ("POST"). POST-begäranden är svårare att konstruera än GET-begäranden, men de cachelagras inte. använd POST-begäranden för alla åtgärder där cachelagring inte är lämpligt.
[ServiceContract(Namespace = "PostAjaxService")]
public interface ICalculator
{
[WebInvoke]
double Add(double n1, double n2);
//Other operations omitted…
}
Skapa en AJAX-slutpunkt för tjänsten med hjälp av WebScriptServiceHostFactory, precis som i Basic AJAX Service-exemplet.
Till skillnad från GET-begäranden kan du inte anropa POST-tjänster från webbläsaren. Om du till exempel navigerar till http://localhost/ServiceModelSamples/service.svc/Add?n1=100&n2=200
resulterar det i ett fel, eftersom POST-tjänsten förväntar sig att parametrarna n1
och n2
skickas i meddelandetexten i JSON-format och inte i URL:en.
Klientwebbsidan PostAjaxClientPage.aspx innehåller ASP.NET kod för att anropa tjänsten när användaren klickar på en av åtgärdsknapparna på sidan. Tjänsten svarar på samma sätt som i basic AJAX-tjänstexemplet med GET-begäran.
Så här konfigurerar du, skapar och kör exemplet
Kontrollera att du utför installationsanvisningarna One-Time installationsproceduren för Windows Communication Foundation-exempel.
Skapa lösningen PostAjaxService.sln enligt beskrivningen i Skapa Windows Communication Foundation-exempel.
Gå till
http://localhost/ServiceModelSamples/PostAjaxClientPage.aspx
(öppna inte PostAjaxClientPage.aspx i webbläsaren från projektkatalogen).