Principales respuestas
Consumo de API-REST ASP NET

Pregunta
-
Saludos,
estoy iniciando en ASP NET MVC testeando un proyecto ASPNET MVC el cual consume datos desde un API REST desarrollado en CORE 2.1.
A nivel local realizo las consultas desde la aplicación, sin problemas, además desde Postman reviso los GET con respuesta 200 Ok, todo perfecto. Sin embargo hago la publicación en el hosting y la aplicación no logra consultar los datos del API. .Me podrían dar una idea de como lograr conectar los proyectos una vez publicados. Algo estoy dejando de lado ?
Gracias de antemano, por su valiosa ayuda
Respuestas
-
de acuerdo....
una consulta... en la aplicación uso <add key="UrlServices" value="http://api.varfonsa.com" />
para llamar al servicio.
En el servicio tengo que cambiar todos los localhost por ese valor ??
el proveedor del host me indica que la dirección es http://api.varfonsa.com:8172
agradezco tu valioso tiempo
me respondo a mi mismo si, tenia que cambiar los localhost
de nuevo gracias por el tiempo y la ayuda..!!!
Todas las respuestas
-
La aplicacion una vez publicada tiene que funcionar exactamente igual, suponiendo que tenga bien puesta la ruta de la API. Cerciorate de que la ruta que le configuras cuando lo publicas en produccion es correcta y apunta a la direccion de la API, y que dicha direccion es accesible y no esta cerrada en ningun firewall que se interponga entre ambos servidores.
Otra cosa que puede diferir entre desarrollo y produccion es el tema de autenticacion. Cerciorate de que las forma de autenticacion y las credenciales requeridas por tu API (si es que la tienes configurada para que requiera autenticacion) concuerdan con las que tengas configuradas en el entorno de produccion.
- Propuesto como respuesta Sergio ParraModerator martes, 21 de mayo de 2019 14:15
-
hola
>>Sin embargo hago la publicación en el hosting y la aplicación no logra consultar los datos del API
si la consultas desde Posman que respuesta recibes ?
porque al publicar puede que este aplicando CORS
Enable Cross-Origin Requests (CORS) in ASP.NET Core
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina -
buenos días, gracias por sus comentarios
una de mis dudas son las direcciones como comenta Alberto
en el web config de la aplicación tengo
<add key="TestUrlServices" value="https://api.varfonsa.com" />
<add key="UrlServices" value=" http://localhost:5091" />
en donde no estoy seguro la UrlServices además del puerto que debo utilizar
las pruebas en Postman no incluyen el puerto, ya que si lo agrego la consulta falla
en Postman hago una consulta por ejemplo
http://api.varfonsa.com/Empresa/GetEmpresasbyCuentanunhard?Id=2
en los Headers se muestra lo siguiente
Content-Type →application/json; charset=utf-8
Server →Kestrel
X-Powered-By →ASP.NET
Date →Tue, 21 May 2019 13:58:27 GMT
Transfer-Encoding →chunked
X-OSSProxy →OSSProxy 1.3.338.311 (Build 338.311 Win32 en-us)(Mar 5 2019 12:33:55)
Connection →keep-alive
Proxy-Connection →keep-alive
en el JSon se muestra lo siguiente
[ { "idempresa": 2, "idtipoidentificacion": 2, "idcuentanunhard": 2, "nombrecomercial": "NOMBRE DE EMPRESA", "razonsocial": "NOMBRE COMPLETO DE EMPRESA S.A.", "numeroidentificacion": "3-101-XXXXXXX", "emailempresa": "info@manconsultinggroup.com", "idprovincia": 3, "idcanton": 39, "iddistrito": 294, "barrio": "uno", "telefonoempresa": "(506) XXXX-XXXX", "direccionempresa": "Direcccion exacta de empresa." ] },
-
Bien, en el .config tienes dos URLs. ¿Cuál de ellas es la que estás usando realmente a la hora de invocar el servicio? Examina el código a ver dónde lee el velor desde el web.config, a ver cuál está tomando.
Aparentemente, y por lo que señalas en Postman, la llamada que has probado que funciona es la que has denominado "TestUrlServices" en el web.config. Pero si el programa lee la otra en lugar de esa, entonces es normal que no funcione... salvo que casualmente tengas desplegada una segunda copia de la API en localhost y en el puerto 5091.
-
Revisando el código la URL que invoca el servicio es <add key="UrlServices" value=" http://localhost:5091" />
lo modifico por <add key="UrlServices" value="https://api.varfonsa.com" />pero al cambiar no hay acceso al servicio porque presenta el mensaje cuando el usuario es null
No se puede acceder al sistema, inconvenientes con el acceso a la base de datos
claro tengo un error o deberia decir horror
value=" http no value=" httpsestoy haciendo las pruebas del caso
- Editado Serolando miércoles, 22 de mayo de 2019 1:29
-
Lo he probado y tu servidor solo responde por http pero no por https. Si realmente necesitas usar https, te falta configurar correctamente el servidor. Pruébalo provisionalmente poniendo http, para confirmar que la parte cliente accede correctamente al servicio, y luego si es que lo necesitas puedes cambiarlo a https una vez que el servidor esté bien configurado para soportarlo.
-
de acuerdo....
una consulta... en la aplicación uso <add key="UrlServices" value="http://api.varfonsa.com" />
para llamar al servicio.
En el servicio tengo que cambiar todos los localhost por ese valor ??
el proveedor del host me indica que la dirección es http://api.varfonsa.com:8172
agradezco tu valioso tiempo
me respondo a mi mismo si, tenia que cambiar los localhost
de nuevo gracias por el tiempo y la ayuda..!!!