Skip to content

[HttpFoundation] Add application/soap+xml #61213

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

jesperbjoernandersen
Copy link

@jesperbjoernandersen jesperbjoernandersen commented Jul 23, 2025

Q A
Branch? 7.4
Bug fix? no
New feature? no
Deprecations? no
Issues Fix #...
License MIT

Added application/soap+xml as a format. This ensures that getContentTypeFormat() returns 'xml' instead of null.

Many soap web services use application/soap+xml as content-type. This will make getContentTypeFormat() return 'xml' instead of null
@carsonbot

This comment was marked as outdated.

@carsonbot
Copy link

Hey!

Thanks for your PR. You are targeting branch "7.4" but it seems your PR description refers to branch "7.4 for features / 6.4, 7.2, or 7.3 for bug fixes".
Could you update the PR description or change target branch? This helps core maintainers a lot.

Cheers!

Carsonbot

@jesperbjoernandersen jesperbjoernandersen changed the title Soap+xml [HttpFoundation] Soap+xml Jul 23, 2025
@carsonbot carsonbot changed the title [HttpFoundation] Soap+xml Soap+xml Jul 23, 2025
@carsonbot carsonbot changed the title Soap+xml [HttpFoundation] Soap+xml Jul 23, 2025
@Spomky
Copy link
Contributor

Spomky commented Jul 24, 2025

Thanks for the PR.
Adding application/soap+xml is definitely useful and solves a real-world need.

That said, this highlights a broader question we might want to address more structurally: how should Symfony handle MIME types that follow the application/*+suffix pattern?

Currently, mappings like 'jsonld' => ['application/ld+json'] is hardcoded, but this doesn't scale well and misses many valid MIME types unless explicitly listed. Curious to hear what others think.

@OskarStark OskarStark changed the title [HttpFoundation] Soap+xml [HttpFoundation] Add application/soap+xml Jul 24, 2025
Mistakenly replaced 'application/xml' with '$'. That has been corrected
@fabpot
Copy link
Member

fabpot commented Aug 17, 2025

Closing in favor of #61267, which has a more generic solution.

@fabpot fabpot closed this Aug 17, 2025
fabpot added a commit that referenced this pull request Aug 20, 2025
…x (Spomky)

This PR was merged into the 7.4 branch.

Discussion
----------

[HttpFoundation] Add support for structured MIME suffix

| Q             | A
| ------------- | ---
| Branch?       | 7.4
| Bug fix?      | no
| New feature?  | yes
| Deprecations? | no
| Issues        | Fix #61213
| License       | MIT

Extended MIME type handling in `Request::getFormat()` to support structured suffixes like `application/soap+xml`. Introduced a private method to define fallback formats based on RFC specifications. Updated the test suite accordingly.
It adds supports for common mime types:

* `soap`: application/soap+xml (instead of `xml`)
* `problem`: application/problem+json
* `hal`: application/hal+json, application/hal+xml
* `jsonapi`: application/vnd.api+json
* `yaml`: text/yaml, application/x-yaml
* `wbxml`: application/vnd.wap.wbxml
* `pdf`: application/pdf
* `csv`: text/csv

Commits
-------

f2ba0b3 [HttpFoundation] Add new MIME type mappings to `getMimeTypes()``
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants