BUGFIX: Detect Content-Type in GcsStorage #16
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When uploading a resource to GCS storage the Content-Type is explicitly
defined in metadata options.
However
getMediaType()
is always returning the fallback valueapplication/octet-stream
as it's logic is based on using the filenameto determine the Content-Type. At this point the filename consists only
of a sha1 or a random value.
PHP's fileinfo extension has functions to detect a Content-Type based on
file content.
This change uses
mime_content_type()
andfinfo_*()
functions (if theseare installed) to detect the Content-Type.