ColdFusion API REST regresar 'fallo de conexión. código de estado disponible.' cuando se le llama de forma remota

StackOverflow https://stackoverflow.com/questions/3902654

Pregunta

Ahora quiero prefijo esto con Estoy seguro de que este debe ser aquí o en la culpa del servidor así que voy a publicar aquí, para empezar.

Estamos desarrollando una API REST en ColdFusion 9 que está siendo alojado en IIS 7 para un cliente, que en ciertas llamadas debe llamar a otro servicio web interno. Al hacer estas llamadas desde el servidor que la API está alojado en que no hay errores, sin embargo, cuando hacemos la llamada de una máquina remota se devuelve el mensaje siguiente:

  

'error de conexión. código de estado disponible. "

He buscado en Google el problema por el que se sugirió lo siguiente como una solución http://www.talkingtree.com/blog/index.cfm/2004/7/28/20040729 pero no funciona para mí. Las siguientes son las notas de mi propia prueba:

  • Las llamadas que están causando el problema son una mezcla de get, put, publicar y eliminar.
  • La única parte común de cada llamada es la que habla con el mismo servicio web.
  • Soy capaz de llamar al servicio web directamente desde los lugares donde hago las llamadas remotas a la API de.
  • Si bien todas las llamadas realizar una llamada con el mismo servicio web que no todos hacen la misma llamada al servicio web.
¿Fue útil?

Solución 2

El problema resultó ser que cada una de las llamadas requiere autenticación básica que los mismos estaban manejando las llamadas, sin embargo autenticación básica había sido encendida en IIS que estaba causando IIS para interceptar cualquier solicitud con un encabezado de autorización.

Esto provoca un problema ya que asume que si la autenticación de IIS se pasa a continuación es para un usuario en esa máquina / dominio y rechazaría cualquier otra credencial (que eran válidas para el sistema). Que estaba trabajando cuando se han registrado en la máquina, ya que venía a nivel local no era necesario para autenticar al usuario.

Otros consejos

Ideas:

Llamada en el servicio web de forma remota mediante una dirección URL que se resuelve en el servidor ColdFusion interna (por ejemplo, http: // [servidor]: 8300). Es probable que tenga cierta configuración para conseguir este trabajo. Razón para hacerlo es identificar si IIS o ColdFusion es la causa raíz. Si usted puede golpear el servidor interno de forma remota a continuación, IIS es probablemente el tema.

Es la llamada de servicio web a través de SSL? Si es así, es la persona que llama a distancia también ColdFusion? Si su respuesta es sí tanto, comprobar para ver si el certificado SSL es la confianza de JVM del interlocutor remoto. Si no es así, es necesario registrarse como parte del almacén de claves de la JVM.

Puede hacer ping al servidor host de la persona que llama? Si no es así, hace la necesidad de la persona que llama una entrada "anfitriones"?

Si está habilitado en el host, revise el filtro .NET y cómo interactúa con llamadas HTTP. He experimentado una situación en la que yo era incapaz de acceder a una carpeta llamada "/ bin" debido a que el filtro de .NET interceptado las peticiones.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top