Windows Communication Foundation è un framework che permette la realizzazione di servizi ed esporli nei più svariati modi. Dalla versione 3.5 del .NET Framework è possibile tra questi anche utilizzare HTTP con semplici chiamate REST e POX facilmente interrogabili da Javascript, soprattutto con tool come jQuery che permettono di leggere JSON e XML facilmente.
Nella versione 4.0 di WCF è stato aggiunto il supporto anche a JSONP (JSON with Padding) che in modo simile a JSON, contiene come guscio della risposta il nome di una funzione Javascript da richiamare. Questo trucco permette a script di altri siti/domini di poter chiamare il servizio grazie al tag SCRIPT, il quale non è sottoposto alle restrizioni di sicurezza che invece xmlHttpRequest ha.
Sebbene può sembrare un bug di sicurezza, JSONP richiede la complicità di chi offre il servizio. In WCF 4.0 per farlo basta agire nel web.config.
<system.serviceModel> <behaviors> <bindings> <webHttpBinding> <binding name="WebApi" crossDomainScriptAccessEnabled="true" /> </webHttpBinding> </bindings> </behaviors> </system.serviceModel>
Impostando a true la proprietà crossDomainScriptAccessEnabled del webHttpBinding si permette di chiamare il servizio indicando con il parametro in querystring, di nome callback, il nome della funzione Javascript con la quale racchiudere la risposta. E' possibile inoltre cambiare il nome del parametro querystring sfruttando l'attributo JavascriptCallbackBehavior da porre sulla classe del servizio.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- Disponibile la beta 1 del .NET Framework 4.0 e di Visual Studio 2010
- Oracle supporterà Entity Framework entro il 2011
- Build 2016: segui con noi in live streaming!
- Windows Phone 7.5 Developer Day with Nokia and Microsoft - Roma, Milano
- Visual Studio 2010 e .NET Framework 4.0: beta 2 e data di release RTM
- Silverlight 5: ecco la Release Candidate