Bad Gateway 502 errore quando si tenta di inviare XML utilizzando C #
-
26-09-2019 - |
Domanda
Sto avendo un problema con un gateway di pagamento (Realex RealVault) e né Realex o riesco a capire qual è il problema così ho pensato di mettere questo qui per vedere se qualcuno potrebbe aiutare a far luce su questo problema strano.
Ogni volta che provo a trasmettere al Realex sul link: https: //epage.payandshop .com / EPage-remote-plugins.cgi ottengo un errore che dice:
502 - Web server ha ricevuto un invalido risposta mentre agisce come un gateway o server proxy. C'è un problema con la pagina che stai cercando per, e non può essere visualizzata. quando il server Web (mentre in qualità di un gateway o proxy) contattato la server di contenuto a monte, ha ricevuto una risposta non valida dal contenuto server.
io mando il mio richiesta utilizzando il seguente codice (messo a nudo il codice di debug che ho in qui per restituire l'errore 502 per brevità):
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(LinkToRealex);
req.ContentType = "text/xml";
req.Method = "POST";
req.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)";
req.Proxy = WebRequest.DefaultWebProxy;
req.Timeout = 15000;
byte[] bytes = Encoding.ASCII.GetBytes(XMLTosend);
req.ContentLength = bytes.Length;
Stream os = req.GetRequestStream();
os.Write(bytes, 0, bytes.Length);
os.Close();
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
if (resp == null) return null;
StreamReader sr = new StreamReader(resp.GetResponseStream());
return sr.ReadToEnd().Trim();
Ho controllato i registri IIS e sguardi tutto ok ci -
2011-01-06 00:44:04 W3SVC636984653 IP_Of_Server POST /RealexTest.aspx - 80 - My_IP_Address Mozilla / 5.0 + (Windows; + U; + Windows + NT + 6.0; + it-IT; + rv: 1.9.2.13). + Gecko / Firefox 20.101.203 + / 3.6.13 + GTB7.1 + (+ NET + CLR +3.5.30729;. + NET4.0E) 200 0 0
La cosa strana è che se provo a trasmettere ad altri sistemi di pagamento di Realex (usa un collegamento diverso) è tutto a posto (e con questo intendo ricevo un back risposta dal server purtroppo non riesco a utilizzare questo servizio per il loro servizio RealVault). In un primo momento questo mi portano a credere che tutto era giù per l'URL che stava usando, ma perché posso mettere questo URL nel browser e ottenere una risposta Credo che il problema potrebbe essere giù a IIS o il mio codice.
Io corro asp.net 3.5 codice su IIS6 / Windows Server 05. In IIS il sito ha uno SSL e indirizzo IP statico.
So che questo è un po 'un lungo tiro, ma se qualcuno ha qualche idea ho potuto provare che sarebbe molto apprezzato.
Grazie per il vostro aiuto, Ricco
Soluzione
Si scopre che questo errore è quello che si vede se il vostro XML non è formattato correttamente quando si invia a Realex.
A differenza della normale chiamata Realex XML, che vi informa che il vostro XML non è impostato correttamente, il sistema RealVault XML non vi dirà questo e si vedrà il messaggio di errore che ho citato nella mia interrogazione.
Speriamo che questo contribuirà a qualcun altro là fuori.