Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    [C#] Upload di una stringa in un file di testo

    Il problema è il seguente, devo effettuare l'upload di una stringa di testo all'interno di un file di testo presente nel MIO spazio WEB.

    Ora, in fase di lettura riesco perfettamente a recuperare il contenuto del file di testo tramite l'uso del metodo WebClient.DownloadString, per effettuare l'upload mi servo invece del metodo WebClient.UploadString dopo avere settato le credenziali (user e password).
    Purtroppo quando tento di effettuare l'upload della stringa all'interno del file di testo compare il seguete errore.

    Errore del server remoto: (405) Metodo non consentito..
    Il mio spazio WEB è ospitato su Altervista, il problema è relativo alla politica si quell'ISP o sbaglio qualcosa io?

    Riporto il frammento di codice che si occupa di effettuare l'upload.

    codice:
    string indirizzo_file = "Indirizzo del file di testo";
    WebClient client = new WebClient();
    
    string user="usename";
    string pass="password";
    
    ICredentials credenziali = new NetworkCredential(user, pass);
    client.Credentials = credenziali;
    
    string dato = textBox2.Text;
    client.UploadString(indirizzo_file, dato);
    Qualcuno può consigliarmi al meglio?

    Grazie!

  2. #2
    Utente di HTML.it L'avatar di hkproj
    Registrato dal
    Jul 2006
    Messaggi
    250
    da quello che ne so io, devi perforza utilizzare l'FTP per modificare i files, altrimenti crei un file PHP che accetta username, password e la stringa da mettere nel file....
    --------------------HkProj------------------

  3. #3
    Premetto che il PHP lo sto studiando, quindi come mettere in pratica ciò, mi riferisco alla creazione del file PHP ancora non so farlo.

    Però mi interessa capire la teoria di ciò che mi hai suggerito, voglio dire, il file PHP devo caricarlo nel mio spazio WEB, giusto?

    E poi devo fare in modo che il mio programma in C# si colleghi al file PHP per effettuare le operazioni richieste?

    Intendi questo per aggirare il problema della politica di Altervista riguardo alla modifica dei propri files?

    Grazie.

  4. #4
    Utente di HTML.it L'avatar di hkproj
    Registrato dal
    Jul 2006
    Messaggi
    250
    Sì. Ma se vuoi un metodo .NET puoi usare l'FTP per accedere al tuo spazio, scaricare il file da modificare, effettuare la modifica, eliminare il file originale, uploaddare quello nuovo (modificato).
    Altrimenti mandi una richiesta GET al tuo file PHP che sta nel tuo spazio, che provvederà alla modifica del file interessato (metodo non sicuro). Invece l'FTP è sicuro, se supporta l'SSL.
    Ciao.
    --------------------HkProj------------------

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466
    Originariamente inviato da SkyNET290897
    Il problema è il seguente, devo effettuare l'upload di una stringa di testo all'interno di un file di testo presente nel MIO spazio WEB.
    Sei certo di avere i diritti necessari per poter scrivere con il protocollo HTTP?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6
    Originariamente inviato da alka
    Sei certo di avere i diritti necessari per poter scrivere con il protocollo HTTP?
    No, non sono sicuro.

    Infatti suppongo che la politica dell'ISP sia quella di non concedere tale operazione, sai dove posso controllare ciò?

    Sì. Ma se vuoi un metodo .NET puoi usare l'FTP per accedere al tuo spazio, scaricare il file da modificare, effettuare la modifica, eliminare il file originale, uploaddare quello nuovo (modificato).
    Altrimenti mandi una richiesta GET al tuo file PHP che sta nel tuo spazio, che provvederà alla modifica del file interessato (metodo non sicuro). Invece l'FTP è sicuro, se supporta l'SSL.
    Ciao.
    Ho dato un'occhiata ai metodi del Framework .NET relativi all'FTP, ma la procedura di scaricare il file, modificarlo, cancellare quello originale e rieffettuare l'upload mi sembra troppo laboriosa.

    Inviare la richiesta GET al file PHP e poi i dati da modificare mi sembra già migliore, ma perchè dici che non è sicuro?

    Inoltre, e qui ribadisco la mia scarsa conoscenza del PHP, l'ISP mi permette di inviare dati al file PHP in modo che possa modificare un file hostato?

    Grazie a entrambi.

  7. #7
    Allora, dato che mi è stato suggerito di usare il protocollo FTP al posto dell'HTTP, ho cercato nulla sintassi della WebClient.UploadString il modo per usare il protocollo FTP.

    Come descritto qui, ho implementato il tutto in questo modo:

    codice:
    string indirizzo_file = "Indirizzo/file.txt";
    WebClient client = new WebClient();
    string user = "username";
    string pass = "password";
    
    ICredentials credenziali = new NetworkCredential(user, pass);
    client.Credentials = credenziali;
    
    string metodo = "STOR";
    string dato = textBox2.Text;
                  
    client.UploadString(indirizzo_file, metodo, dato);
    Come si nota dal codice nella variabile "metodo" ho settato il valore "STOR", cioè quello riferito al protocollo FTP.

    Anche questa volta è stato segnalato errore, ma diverso dal precedente ed è questo che mi fa pensare che forse sto sbagliando io (lo spero!) e che forse sia possibile modificare il contenuto del file di testo tramite il protocollo FTP.

    L'errore in questione è il seguente:

    Errore del server remoto: (501) Non implementato.
    Mentre l'errore con il metodo "POST" e quindi con il protocollo HTTP era:

    Errore del server remoto: (405) Metodo non consentito..
    Non mi è chiaro cosa significa esattamente quel "Non implementato".

    Consigli?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.