Negli script #170 e #171 abbiamo visto come eseguire chiamate AJAX rispettivamente in GET e POST. Quando dobbiamo effettuare richieste su un dominio diverso da quello in cui ci troviamo, questo tipo di richieste sono effettuabili solo tramite Jsonp. Per effettuare questo tipo di chiamate Angular 2 mette a disposizione la classe JSONP. Questa classe espone il metodo get, che accetta in input l'URL da invocare e un oggetto con i parametri da inviare.
import { Injectable } from '@angular/core'; import { Jsonp, URLSearchParams } from '@angular/http'; @Injectable() export class MyService { constructor(private jsonp: Jsonp) {} search (query: string) { var url = "http://www.site.com/api/get"; var params = new URLSearchParams(); params.set('search', query); params.set('callback', 'JSONP_CALLBACK'); return this.jsonp .get(url, { search: params }) .map(request => /*Codice che elabora la risposta*/); } }
Grazie alla classe JSON, effettuare questo tipo di chiamate è estremamente semplice, poiché si segue un flusso molto simile a quello visto per le classiche chiamate AJAX viste in precedenza.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Miglioramenti agli screen reader e al contrasto in Angular
Utilizzare Tailwind CSS all'interno di React: primi componenti
Configurare policy CORS in Azure Container Apps
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Inizializzare i container in Azure Container Apps
Effettuare il pull di git LFS in un workflow di GitHub
Usare un KeyedService di default in ASP.NET Core 8
Utilizzare i primary constructor in C#
Utilizzare l'operatore GroupBy come ultima istruzione di una query LINQ in Entity Framework
Creare moduli CSS in React