CORS Policy No ‘Access-Control-Allow-Origin’ – Azure Function

CORS: Chi sei? CORS è una sigla ed ha un significato ben preciso. Con questo termine intendiamo Cross-Origin Resource Sharing e (facendola breve) si tratta di HTTP Header aggiuntivi per autorizzare l’uso di risorse (nel nostro caso Azure Function) da server diversi rispetto a dove si trova la risorsa stessa. CORS policy: No ‘Access-Control-Allow-Origin’ Quando il server sorgente (da cui parte la richiesta) non viene autorizzato sul server di destinazione ci viene fornito un messaggio di errore.

ngrok: Angular WebSite da localhost

In questo ultimo periodo ho ripreso in mano Angular e cosa c’è di meglio del rifare il sito alla propria commercialista per prendere confidenza oltre la teoria? Per farle vedere una versione bozza della home ho deciso di esporle il sito dal mio pc sfruttando ngrok evitando così di doverlo pubblicare in remoto. ngrok: Angular WebSite - Step by Step Scaricare ngrok e registrarsi al servizio (personalmente il piano free è l’ideale per lo sviluppo) Posizionarsi nella cartella del sito Angular e lanciare il classico ng serve per avere il sito navigabile in locale (di default la porta è :4200) Da prompt/shell avviare ngrok con la seguente sintassi in modo da evitare “Invalid Host Header” come messaggio di errore: ngrok http 4200 -host-header="localhost:4200” Attendere qualche secondo e l’output prodotto sarà il seguente (o meglio simile al)

The “Csc” task could not be initialized with its input parameters

L’altra sera ho voluto provare a creare un progetto “ASP.NET Core Web Application” (V2.2) utilizzando “Angular” come Template. Buona idea? Cattiva idea? Non lo, ma la strada non è stata così diretta. The “Csc” task could not be initialized with its input parameters. La creazione è andata subito a buon fine, ma l’errore era dietro l’angolo ed alla prima compilazione si è presentato col seguente messaggio: MSB4063 The “Csc” task could not be initialized with its input parameters.

Azure Data Factory per il backup di Table Storage

Nel corso dell’ultimo ho realizzato per un mio cliente un sistema che utilizza come fonte dati Azure Table Storage essendo in fase sperimentale senza volere incorrere nei costi di un database. Terminato lo sviluppo, bisognava pensare ad una modalità di backup (ed eventuale ripristino in caso di problemi) e per farlo ho utilizzato Azure Data Factory. Come? Azure: Componenti Utilizzati Storage account sorgente dati dove l’app e le Azure function lavorano per computare il tutto Storage account di backup dove verranno riposte le copie di backup Azure Data Factory il motore del nostro backup che sposterò tramite pipeline mirate i dati dalla sorgente alla destinazione Azure Data Factory: Come crearlo step by step Per creare il sistema di backup delle Table Storage ho utilizzato il data factory esportando il contenuto ogni Table all’interno di un Blob Container specifico nello Storage Account di destinazione.

MapExtensions.Map: Pipeline Custom in .NET Core

Utilizzare MapExtensions.Map è davvero semplice e dai risvolti potenti. Grazie ad esso -specialmente realizzando un middleware in .NETCore possiamo creare delle “mappe” tra la richiesta in ingresso e l’output fornito. MapExtensions.Map: Definizione Andando sulla documentazione ufficiale .NETCore possiamo leggere quanto segue MapExtensions.Map(IApplicationBuilder, PathString, Action) Namespace: Microsoft.AspNetCore.Builder Assembly: Microsoft.AspNetCore.Http.Abstractions.dll Branches the request pipeline based on matches of the given request path. If the request path starts with the given path, the branch is executed.

Mailgun: inviare gratuitamente (o quasi) le tue mail

Mailgun è un ottimo strumento per inviare mail e lo posso confermare dopo l’intenso utilizzo dell’ultimo anno. Per questo motivo ho deciso di condividere (in una serie di articoli) la mia libreria e relativa Azure Function per utilizzare al meglio questo servizio. Link: DevAndreaCarrattaIT.MailGun (C# Code): https://github.com/devandreacarratta/DevAndreaCarrattaIT.MailGun/ Mailgun: https://www.mailgun.com/ Mailgun: Step 0 Come primo passaggio per utilizzare Mailgun dovete andare sul sito, registrarvi e completare la registrazione.