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
Code scanning e advanced security con Azure DevOps
Creare gruppi di client per Event Grid MQTT
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Gestire domini wildcard in Azure Container Apps
Verificare la provenienza di un commit tramite le GitHub Actions
Gestire i null nelle reactive form tipizzate di Angular
Creare un'applicazione React e configurare Tailwind CSS
Copiare automaticamente le secret tra più repository di GitHub
Implementare l'infinite scroll con QuickGrid in Blazor Server
Creare form tipizzati con Angular
Reactive form tipizzati con FormBuilder in Angular
Utilizzare gli snapshot con Azure File shares