ng serve with traditional backend
- Linguagem predominante
- TypeScript
- Estrelas
- 27k
- Forks
- 11.8k
- Merge médio
- 14h 23min
- PRs com merge (30d)
- 162
Descrição
### Which @angular/* package(s) are relevant/related to the feature request?
compiler-cli
### Description
I would like to serve the index.html using a traditional backend, and use ng serve to get HMR for the angular app.
The issue with a proxy for the backend API calls is that development and production behave differently. Also, you cant have additional logic on the backend before serving the index.html (for example cookie auth)
### Proposed solution
Have a flag on `ng serve` that the websocket should go directly to the angular server. and would be nice if we can have a single script instead of having to add it all manually.
In vite all you need to do is add the following to your server's HTML template.
```
```
https://vitejs.dev/guide/backend-integration.html
### Alternatives considered
I tried adding the full path to the angular scripts, but the `/ng-cli-ws` calls goes to the backend server.
```
Angular
```
`--public-host=localhost:4200` fixes the /ng-cli-ws call, but lazy loading and the .hot-update.json still goes the backend server.

changing the base href to `https://localhost:4200/` fixes above, but breaks the routing links
also, you need to enable ssl if your backend is ssl, as it will go to wss instead of ws, i think this should rather be based on options.ssl see https://github.com/angular/angular-cli/issues/24373#issue-1475322626.
Guia de contribuição
Direção de pesquisa
Comece rastreando o tratamento de ng serve para /ng-cli-ws, os assets carregados sob demanda, os arquivos de hot-update e o comportamento de options.ssl; depois, revise o fluxo existente de public-host. Está concluído quando houver uma forma compatível de servir os assets de desenvolvimento do Angular e websocket por meio de um backend tradicional sem quebrar o roteamento do backend nem a seleção de protocolo.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- angular, typescript
- Domínio
- cli
- Tipo de issue
- Funcionalidade
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 35/100