Remove msgtype requirement in HttpMessageContent
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Comienza en src/System.Net.Http.Formatting/HttpMessageContent.cs, en las líneas citadas donde se agrega msgtype=request y se valida msgtype=response. Sigue ReadAsHttpResponseMessageAsync() y determina el comportamiento configurable necesario; se considera terminado cuando las solicitudes pueden omitir msgtype y se aceptan las respuestas con Content-Type: application/http.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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.
- Lenguaje dominante
- C#
- Estrellas
- 897
- Forks
- 358
- Merge medio
- 40 min
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de aspnet/AspNetWebStack
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 45/100
aspnet/AspNetWebStack#431 · 1 comentario ·
-
Needs: Author Feedback
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
aspnet/AspNetWebStack#430 · 2 comentarios ·
-
Needs: Author Feedback
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
aspnet/AspNetWebStack#429 · 1 comentario ·
-
Needs: Author Feedback
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
aspnet/AspNetWebStack#428 · 1 comentario ·
-
bug
aspnet/AspNetWebStack#399 · 2 comentarios · 1 asignado ·
Todos los issues de aspnet/AspNetWebStack
Issues similares
-
bug frontend good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
NavigationViewItemAutomationPeer implements IInvokeProvider but never advertises the Invoke pattern Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
unoplatform/uno#24629 ·
-
agentic-workflows Needs: Triage :mag: State: In-PR
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
CS0162 "Unreachable code detected" warning from a MSBuildTemp .tmp file in every game project Abiertobug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
Type: enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
apache/arrow-adbc#4809 ·