angular / angular/angular-cli

ng serve with traditional backend

Đang mở
#24,478 5 bình luận 5 reaction 0 người được giao Xem trên GitHub
angular/build:dev-server area: @angular/build feature feature: insufficient votes
Ngôn ngữ chính
TypeScript
Star
27k
Fork
11.8k
Merge trung bình
14 giờ 23 phút
Pull request đã merge (30 ngày)
162

Mô tả

### 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.
![image](https://user-images.githubusercontent.com/46120703/210085539-caec948c-1db4-4912-8fbd-1cf0190798bd.png)

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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách theo dõi cách ng serve xử lý /ng-cli-ws, các asset được tải lazy, các tệp hot-update và hành vi của options.ssl, sau đó xem xét luồng public-host hiện có. Công việc được xem là hoàn tất khi có một cách được hỗ trợ để phục vụ các asset phát triển của Angular và websocket thông qua một backend truyền thống mà không làm hỏng việc định tuyến của backend hoặc việc lựa chọn giao thức.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
angular, typescript
Lĩnh vực
cli
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.