PDA

View Full Version : [C# - ASP.NET] Pubblicare un servizio Web


seriud89
18-04-2013, 10:06
Ciao a tutti.
Ho creato un servizio Web in C#, usando Visual Studio (Framework .NET 3.5). In modalità debug funziona benissimo, perciò ora è arrivato il momento di pubblicarlo, in modo tale da poterlo consumare in remoto (l'applicazione che consumerà il web service è una app scritta in android).

Ora vorrei sapere proprio questo: come faccio a pubblicare il mio web service su internet in modo tale che possa essere consumato da qualsiasi applicazione in remoto?

Vi prego di aiutarmi, è molto importante, è per il mio lavoro di tesi.

Grazie mille!

tomminno
18-04-2013, 10:16
Ciao a tutti.
Ho creato un servizio Web in C#, usando Visual Studio (Framework .NET 3.5). In modalità debug funziona benissimo, perciò ora è arrivato il momento di pubblicarlo, in modo tale da poterlo consumare in remoto (l'applicazione che consumerà il web service è una app scritta in android).

Ora vorrei sapere proprio questo: come faccio a pubblicare il mio web service su internet in modo tale che possa essere consumato da qualsiasi applicazione in remoto?

Vi prego di aiutarmi, è molto importante, è per il mio lavoro di tesi.

Grazie mille!

Hai 2 scelte:
1)pubblicarlo sulla tua macchina e aprire le porte del tuo router adsl e far puntare l'app android al tuo ws tramite ip (quasi certamente dinamico, ma puoi usare servizi come dyndns...)
2)usare uno qualunque dei servizi di hosting che supportano .net e quindi comprare anche un dominio per l'indirizzamento.

seriud89
18-04-2013, 10:25
Prima di tutto, ti ringrazio per la risposta.
Sapresti indicarmi un tutorial riguardante la prima scelta?

idoido
18-04-2013, 11:31
aggiungo che normalmente il webserver integrato in visual studio non permette l'accesso da altri pc ma solo in locale (se non tramite hack), per ovviare è meglio usare iis (express o versione normale)

io ti consiglio di comprarti un dominio con hosting .net (come ad esempio aruba) e pubblicare li il tuo servizio

tomminno
18-04-2013, 14:09
Prima di tutto, ti ringrazio per la risposta.
Sapresti indicarmi un tutorial riguardante la prima scelta?

Non esiste "un tutorial" perchè dipende da tuo router adsl, se supporta in automatico servizi quali dyndns.
Poi come suggeriva idoido configuri il tuo ws su IIS (Express o Full è indifferente nel tuo caso) e sei a posto.

Ovviamente poi devi avere la macchina sempre accesa altrimenti tutto il sistema non funziona...

rizamp
03-05-2013, 11:00
onestamente la soluzione su macchina locale la vedo quantomeno traballante. con un investimento minimo, poche decine di euro per un anno, puoi portare i tuoi ws su un server con un dominio di tuo gradimento e stai tranquillo. altrimenti in locale dipenderai da troppi accrocchi. in ogni caso, per farla breve: all'interno della tua rete locale dovrai dire al router di indirizzare una porta (ad esempio la 80) da un tuo ip (dove gira il ws) verso l'esterno. in questo modo dall'esterno, conoscendo l'ip pubblico (non il privato), e digitando IP_PUBBLICO:PORTA (ad esempio, 151.23.45.66:80/nome_ws accedereai al ws. dato che l'ip fornito dal provider cambia spesso e volentieri ti conviene aprirti un account su dyndns che praticamente crea un 'alias' della tua rete e si tiene aggiornato da solo (ma devi avere un router che lo gestisce, i classici netgear e dlink lo fanno). a quel punto avrai un indirizzo del tipo "nomechemipiace.dyndns.org" che saprà sempre quale ip è associato alla tua connessione internet, per cui potrai usare l'alias nomechemipiace.dyndns.org:80/nome_ws per accedere al tuo web service.

tutto questo se non sei sotto fastweb. se sei sotto fastweb.. auguri :Prrr: