Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87

    Invio dati HTTP

    Salve a tutti, ho un problema di questo tipo:
    da un pc client lancio una richiesta http (WebRequest.create) ad una pagina su un server remoto a cui gli passo un flusso dati in formato XML.Il problema nasce quando utilizzo il metodo GetResponse che mi genera questo errore: Errore del server remoto: (403) Non consentito.
    La cosa strana è che se utilizzo la stessa routine direttamente in una pagina aspx sul server, funziona tutto correttamente.
    Qualcuno sa aiutarmi xke devo farlo funzionare assolutamente (pena la creazione di un web service)
    GRAZIE

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,480
    VB.NET?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87
    VB. net 2003

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87
    Cercando su internet ho trovato una possibile soluzione: impostare correttamente l' header http, che venga così accettato dal pc remoto; il problema è che non so come fare...

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87
    NON FUNZIONA!!!!
    Niente da fare... qualcuno ha qualche soluzione o idea da passarmi????

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87
    HELP!

  7. #7
    Posta il codice e spiega come intendi "passare" l'XML alla pagina.
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87
    Questo è il codice del client:

    -------------------------------------
    Try
    Dim request As System.Net.HttpWebRequest
    Dim WebRequest As System.Net.WebRequest

    request = WebRequest.Create(url)

    request.ContentType = "text/xml"
    request.Method = "post"
    request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; InfoPath.1; .NET CLR 2.0.50727)"

    request.CookieContainer = New CookieContainer

    Dim XMLRequest As New System.Xml.XmlDocument
    XMLRequest.Load(pathFileXml)
    XMLRequest.Save(request.GetRequestStream)
    request.GetRequestStream.Close()

    Dim response As System.Net.HttpWebResponse = request.GetResponse

    Dim XMLResponse As New XmlDocument
    XMLResponse.Load(response.GetResponseStream)
    XMLResponse.Close()

    Catch ex As Exception
    MsgBox(ex.Message)
    End Try
    -------------------------------------

    Nota: penso sia un problema sull' header :master:
    Se vuoi posso anke postarti la routine della pagina sul server.

    GRAZIE per la tua attenzione

  9. #9
    Posta anche la routine sul server... può darsi che l'errore sia lì, considerato che non vedo errori nel codice che hai appena postato.
    Amaro C++, il gusto pieno dell'undefined behavior.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2006
    Messaggi
    87
    Questa è la routine contenuta nella pagine sul server remoto:


    ----------------------------------------------------------------
    <%@ Page language="VB" %>
    <%@ Import Namespace="System.Xml"%>

    <script runat="server">
    Sub Page_Load(Sender as Object, E as Eventargs)

    If Request.InputStream.Length = 0 And Request.ContentType <> "text/xml" Then
    Response.Write("

    I parametri non sono corretti. Impossibile proseguire con l'esecuzione della pagina. </p>")
    Exit Sub
    End If

    Dim errori As String = ""

    ' -> Elaborazione dati ricevuti
    Try
    Dim xmlDocRequest As New XmlDocument
    xmlDocRequest.Load(Request.InputStream)

    ' Elaboro i dati

    Catch ex As Exception
    errori = ex.Message
    End Try

    ' -> Generazione risposta
    try
    Response.Clear()
    Response.ContentType = "text/xml"

    Dim XmlWriter As New XmlTextWriter(Response.OutputStream, System.Text.Encoding.UTF8)

    With XmlWriter
    .WriteStartDocument(True)
    .Formatting = Formatting.Indented
    .WriteStartElement("risposta")
    .WriteElementString("errori",errori)
    .WriteEndElement()
    .WriteEndDocument()

    .Flush()
    .Close()
    End With

    Catch ex As Exception
    End Try

    End Sub
    </script>
    -------------------------------------------------------------------

    Ti ringrazio veramente per la tua attenzione, perchè se riesco a risolvere questo problema evito di dover realizzare un web service per lo scambio dati (che nel caso mio in cui i dati sono pochi, sarebbe un bel lavoro)

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.