Si hago una aplicación web en Angular2 que se ejecuta en AWS (S3, DynamoDB), ¿todavía necesito hacer alguna programación del lado del servidor (como Play o PHP o Python)?

La respuesta a su pregunta depende del problema que está tratando de resolver.

Angular (por cierto, la versión 4+ ya está disponible y es muy similar a la 2), es un marco web front-end. Le permite crear sitios web agradables de una sola página (lo que significa que solo hay 1 archivo html y todo el contenido se altera usando javascript) que ya puede hacer mucho en la computadora del cliente.

Si desea escribir un buen front-end utilizando algunos otros back-end con una Interfaz de programación de aplicaciones (API) pública, puede hacerlo solo con Angular. Esto debería hacerle pensar en hacer su propia interfaz reddit, por ejemplo.

Sin embargo, si desea que sus usuarios hagan algo en su sitio web, ALMACENE lo que están haciendo y luego RECUPERE nuevamente … entonces necesitará un back-end. Los front-end no pueden leer del sistema de archivos de un usuario (por razones de seguridad). También se considera una práctica muy mala y terriblemente insegura permitir que su código del lado del cliente interactúe directamente con una base de datos o el sistema de archivos de un servidor remoto. Tendría que enviar las credenciales de su base de datos a través de Internet, por ejemplo, para que todos las vean (y puedan usar).

Entonces, si no está escribiendo un front-end para una API pública existente o una aplicación del lado del servidor existente … entonces sí, deberá escribir su propia aplicación del lado del servidor. Esto se puede hacer en el idioma que desee.

Espero que responda tu pregunta.

Ah, si no menciona “DynamoDB”, entonces la respuesta es sí, definitivamente necesita un lenguaje del lado del servidor para interactuar con su base de datos.

Pero veo que DynamoDB admite Javascript en el siguiente enlace:
JavaScript y DynamoDB

No he usado DynamoDB antes (y no soy un experto), así que no estoy seguro, pero podría decir NO. Puede ver la autenticación de soporte de DynamoDB a través del navegador:

Resumen – Amazon DynamoDB

No puedo entender el mecanismo de autenticación del navegador, ¿por qué es seguro porque todo el código está en el cliente para que cualquiera pueda inspeccionar y ver su configuración?

Lo siento, no puedo evitarlo, pero me interesa su pregunta, ¡cualquiera ha probado DynamoDB solo en el cliente, por favor háganoslo saber!

De todos modos, poner toda su lógica en el cliente puede no ser seguro, depende de su elección.

Si se trata de un sitio estático, no se necesita ningún servidor cuando se aloja a través de s3. Si necesita realizar algún trabajo en el servidor, consulte AWS Lambda para el alojamiento. Lambda es barato y ligero.

La mejor de las suertes.

Si no necesita ningún trabajo en el servidor, no.

Pero si necesita trabajar en el servidor, ya que Angular2 es JavaScript y JavaScript se ejecuta solo en el navegador, necesitará algo de código en el servidor. Incluso si el sitio no es dinámico, digamos que el usuario inicia sesión y se le muestra su puntaje actual y nada más, tendría que haber código ejecutándose en el servidor para producir la página que el servidor envía al navegador.

Sí, si no es un sitio web estático.

More Interesting

Cómo construir una página web protegida por claves secretas

¿Cuál es un buen servicio de alojamiento java? No podemos recurrir a los servicios en la nube, ya que son caros.

¿Cuáles son las herramientas de productividad que más usó para ahorrar tiempo?

¿Cuál es la mejor manera de implementar una aplicación meteor.js?

¿Es el futuro de las aplicaciones HTML5?

¿Qué certificación es mejor para un desarrollador web intermedio, CIW Web Development Professional o MCSD Web Applications?

¿Qué se debe considerar al diseñar una API web para aplicaciones móviles?

¿Para qué se utiliza un marco de aplicación web como Flask? ¿Se utiliza para la secuencia de comandos del lado del servidor?

¿Qué marco sería mejor para construir una aplicación web empresarial?

¿Cuál es la diferencia entre AppDynamics y Application Insights para Azure WebApps?

¿Por qué el desarrollo web con Java es tan difícil y engorroso en comparación con Ruby on Rails o Django?

¿Cuáles son los pasos técnicos exactos de un usuario que interactúa con una aplicación web? (Preferiblemente usando el marco Flask).

Cómo construir una gran aplicación web sin experiencia

¿Existe alguna aplicación de código abierto o basada en la web gratuita para el reembolso de gastos para pequeñas empresas y nuevas empresas que se pueden alojar en las instalaciones?

He estado investigando sobre la actividad de atención al cliente en foros populares de consumidores indios. Necesito estadísticas como las visitas únicas mensuales de los últimos 6 meses. ¿Cuál es la mejor herramienta / método para recopilar las estadísticas?