20 messaggi dal 30 giugno 2010
Ho due progetti:
a) un web service WCF che viene utilizzato per firmare digitalmente documenti con la chiavetta aruba e questo è ospitato in un computer client sotto forma di servizio windows
b) una applicazione web installata su un server.
Il problema è il seguente:
Con la mia applicazione web vorrei invocare tramite il codice javascript della pagina web il servizio windows installato nel pc client in modo da firmare dei files.
E' possibile e come posso fare?
Vi sarei grato mi aiutate a trovare una soluzione anche alternativa.
Grazie e saluti
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,
un servizio per Windows può ospitare un servizio WCF che potrai richiamare da javascript. Esponi il servizio WCF usando il WebHttpBinding, che lo renderà non-SOAP e perciò invocabile più facilmente da javascript.
https://weblogs.asp.net/kiyoshi/wcf-using-webhttpbinding-for-rest-services

Questa è la guida su come includere servizi WCF in servizi per Windows.
https://docs.microsoft.com/it-it/dotnet/framework/wcf/feature-details/how-to-host-a-wcf-service-in-a-managed-windows-service

ciao,
Moreno

Enjoy learning and just keep making
20 messaggi dal 30 giugno 2010
Ti ringrazio per il materiale fornito.
Ti faccio sapere.
Ciao
20 messaggi dal 30 giugno 2010
Ciao Moreno.
Ho verificato i due link ma non ho trovato come richiamare il servizio tramite javascript.
Forse non si può fare quello che ho chiesto e precisamente in un computer client accedere ad una applicazione web che si trova in un server. Da una pagina di questa applicazione vorrei azionare il codice javascript che a sua volta richiama un servizio windows installato nel computer locale (client).
Secondo te è possible?
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,


Secondo te è possible?

Certo, nel modo che ti ho descritto.

I link che ti ho inviato ti mostrano come preparare il servizio WCF.
Per invocarlo via javascript ti basta inviare una richiesta get o post usando jQuery o altra liberia che preferisci.

Nell'esempio trovi la definizione di questa operazione del servizio WCF.
[ServiceContract(SessionMode=SessionMode.NotAllowed)] 
    public interface IContractName 
    { 
        [WebGet(UriTemplate = "date/{year}/{month}/{day}", ResponseFormat = WebMessageFormat.Xml)] 
        [OperationContract] 
        string GetDate(string day, string month, string year); 
    }


L'attributo WebGet serve a stabilire che quell'operazione potrà essere richiamata con una richiesta GET e il suo valore UriTemplate ne definisce il percorso. Quindi ad esempio l'operazione potrà essere invocata con una richiesta GET a http://localhost:porta/date/2018/10/09. Ovviamente tu potrai personalizzare l'UriTemplate secondo le tue esigenze.
Idem per il ResponseFormat: puoi impostare Json se preferisci. Ecco un esempio di richiesta con jquery.

$.getJSON("http://localhost:porta/date/2018/10/09", function(data) {
   //fai qualcosa con data
});


Incontrerai un problema con CORS ma di questo ne parleremo più avanti.

ciao,
Moreno
Modificato da BrightSoul il 09 ottobre 2018 14.59 -

Enjoy learning and just keep making
20 messaggi dal 30 giugno 2010
Grazie mille.
Sei un grande.
Ciao

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.