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
Configurare automaticamente un webhook in Azure DevOps
Loggare le query più lente con Entity Framework
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Gestire gli accessi con Token su Azure Container Registry
Aggiornare a .NET 9 su Azure App Service
Gestione dei nomi con le regole @layer in CSS
Testare l'invio dei messaggi con Event Hubs Data Explorer
Gestione CSS in Blazor con .NET 9
Ottenere un token di accesso per una GitHub App
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi