Ver Mensaje Individual
  #345  
Antiguo 17-03-2017
angelhorse angelhorse is offline
Registrado
NULL
 
Registrado: feb 2017
Posts: 5
Reputación: 0
angelhorse Va por buen camino
Cita:
Empezado por robinsondemantu Ver Mensaje
Pon el código que utilizas para hacer la llamada y lo vemos. ¿Te funcionaba antes?

/*
X509Store store = new X509Store(StoreName.My, StoreLocation.LocalMachine);
store.Open(OpenFlags.ReadOnly);
X509Certificate2Collection certCollection = store.Certificates.Find(X509FindType.FindBySubjectName, "tecnologica", false);
foreach (var item in certCollection)
{
Debug.Print("Item: " + item.SubjectName.Name);
}
X509Certificate2 cert = certCollection[0];
*/

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(connectionString_HACIENDA);
request.ContentType = "text/xml";
request.Method = "POST";

request.Credentials = CredentialCache.DefaultCredentials;
if (CERTIFICADO != null)
{
request.ClientCertificates.Add(CERTIFICADO);
byte[] bytes = System.Text.Encoding.UTF8.GetBytes(root.ToString());

request.ContentLength = bytes.Length;
Stream requestStream = request.GetRequestStream();
requestStream.Write(bytes, 0, bytes.Length);
requestStream.Close();


using (HttpWebResponse webResponse = (HttpWebResponse)request.GetResponse())
{
using (Stream responseStream = webResponse.GetResponseStream())
{
using (StreamReader responseStreamReader = new StreamReader(responseStream, true))
{
response = responseStreamReader.ReadToEnd();
responseStreamReader.Close();
}
responseStream.Close();
}
webResponse.Close();
}


Debug.Print("Respuesta: " + response);

}

Antes si me funcionaba. Antes cogía el certificado a "pelo" que es el código que está comentado al principio.
Después lo cambié por algo más visual para que el usuario escogiese el certificado, pero el funcionamiento es idéntico.
Responder Con Cita