Remove msgtype requirement in HttpMessageContent
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Bắt đầu trong src/System.Net.Http.Formatting/HttpMessageContent.cs tại các dòng được trích dẫn, nơi msgtype=request được thêm vào và msgtype=response được xác thực. Theo dõi ReadAsHttpResponseMessageAsync() và xác định hành vi có thể cấu hình cần thiết; hoàn thành khi các request có thể bỏ qua msgtype và các response có Content-Type: application/http được chấp nhận.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
HttpMessageContent serializes HTTP requests/responses inside a mulitpart/mixed body.
For requests, it sends the header Content-Type: application/http; msgtype=request.
For responses, it expects the header Content-Type: application/http; msgtype=response.
This is where msgtype=request is added in source:
https://github.com/aspnet/AspNetWebStack/blob/1231b77d79956152831b75ad7f094f844251b97f/src/System.Net.Http.Formatting/HttpMessageContent.cs#L68
This is where msgtype=response is validated in source:
https://github.com/aspnet/AspNetWebStack/blob/1231b77d79956152831b75ad7f094f844251b97f/src/System.Net.Http.Formatting/HttpMessageContent.cs#L142-L171
HttpMessageContent should be configurable to not sent a msgtype parameter, and accept responses without a msgtype (given Content-Type: application/http).
As a common real-world example, the OData specification uses Content-Type: application/http without any further msgtype in both its batched requests and responses, see:
https://www.odata.org/documentation/odata-version-2-0/batch-processing/
Inside Microsoft, Dataverse exposes OData services and its batching endpoint is unusable with HttpMessageContent because:
- Dataverse throws when a batch has
msgtype=requestin itsContent-Type; ReadAsHttpResponseMessageAsync()throws when parsing Dataverse response because it does not havemsgtype=response.
- Ngôn ngữ chính
- C#
- Star
- 897
- Fork
- 358
- Merge trung bình
- 40 phút
- Pull request đã merge (30 ngày)
- 1
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của aspnet/AspNetWebStack
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
aspnet/AspNetWebStack#431 · 1 bình luận ·
-
Needs: Author Feedback
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
aspnet/AspNetWebStack#430 · 2 bình luận ·
-
Needs: Author Feedback
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
aspnet/AspNetWebStack#429 · 1 bình luận ·
-
Needs: Author Feedback
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
aspnet/AspNetWebStack#428 · 1 bình luận ·
-
bug
aspnet/AspNetWebStack#399 · 2 bình luận · 1 người được giao ·
Tất cả issue của aspnet/AspNetWebStack
Issue tương tự
-
bug frontend good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
NavigationViewItemAutomationPeer implements IInvokeProvider but never advertises the Invoke pattern Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
unoplatform/uno#24629 ·
-
agentic-workflows Needs: Triage :mag: State: In-PR
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
CS0162 "Unreachable code detected" warning from a MSBuildTemp .tmp file in every game project Đang mởbug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
Type: enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
apache/arrow-adbc#4809 ·