fix(storage-vercel-blob): filename is incorrectly stored encoded when addRandomSuffix is true (#13746)
Previously, if `addRandomSuffix` is set to true, the filename would be stored URL-encoded in the database: <img width="2212" height="140" alt="Screenshot 2025-09-08 at 18 47 50@2x" src="https://github.com/user-attachments/assets/1b001e30-0154-4764-a2e9-b7d8bf729581" /> If in addition to that, if you set `disablePayloadAccessControl: true`, Payload will url-encode the already url-encoded filename on read, leading to an error. This PR fixes this issue by always decoding the filename before storing it in the database, so that they're always stored unencoded, no matter if `addRandomSuffix` is set or not: <img width="1730" height="184" alt="Screenshot 2025-09-08 at 18 49 29@2x" src="https://github.com/user-attachments/assets/44328bfa-e489-4247-9e9b-7ddc6e271afb" /> --- - To see the specific tasks where the Asana app for GitHub is being used, see below: - https://app.asana.com/0/0/1211177878397844
This commit is contained in:
@@ -31,7 +31,7 @@ export const getHandleUpload = ({
|
|||||||
|
|
||||||
// Get filename with suffix from returned url
|
// Get filename with suffix from returned url
|
||||||
if (addRandomSuffix) {
|
if (addRandomSuffix) {
|
||||||
data.filename = result.url.replace(`${baseUrl}/`, '')
|
data.filename = decodeURIComponent(result.url.replace(`${baseUrl}/`, ''))
|
||||||
}
|
}
|
||||||
|
|
||||||
return data
|
return data
|
||||||
|
|||||||
Reference in New Issue
Block a user