url encode/decode correctly paths for hashed values

This commit is contained in:
2025-09-11 10:50:45 +01:00
parent c0dbaa2c3f
commit f8769d0bf1
4 changed files with 37 additions and 48 deletions
+25 -25
View File
@@ -210,31 +210,31 @@ export const getBlobs = async (containerName, casefolderID) => {
"/api/file/downloadblob?container=" + "/api/file/downloadblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blob.name, encodeURIComponent(blob.name),
"hashedfilepath": hashAPIPath( "hashedfilepath": hashAPIPath(
"/api/file/downloadblob?container=" + "/api/file/downloadblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[2] encodeURIComponent(blob.name.split("/")[2])
), ),
"deletepath": "deletepath":
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[2], encodeURIComponent(blob.name.split("/")[2]),
"hasheddeletepath": hashAPIPath( "hasheddeletepath": hashAPIPath(
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[2] encodeURIComponent(blob.name.split("/")[2])
), ),
"hashgetblobs": hashAPIPath( "hashgetblobs": hashAPIPath(
"/api/file/getbloblist?container=" + "/api/file/getbloblist?container=" +
@@ -1235,17 +1235,17 @@ export const getProgressBlobs = async (containerName, caseReference) => {
"/api/file/downloadblob?container=" + "/api/file/downloadblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
caseReference + encodeURIComponent(caseReference) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[1] encodeURIComponent(blob.name.split("/")[1])
), ),
"hasheddeletepath": hashAPIPath( "hasheddeletepath": hashAPIPath(
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
caseReference + encodeURIComponent(caseReference) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[1] encodeURIComponent(blob.name.split("/")[1])
), ),
"hashgetblobs": hashAPIPath( "hashgetblobs": hashAPIPath(
"/api/file/getbloblist?container=" + "/api/file/getbloblist?container=" +
@@ -1406,20 +1406,20 @@ export const getRepsFilesBlobs = async (
"/api/file/downloadblob?container=" + "/api/file/downloadblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
blob.name.split("/")[0] + encodeURIComponent(
"/" + blob.name.split("/")[0] + "/" + blob.name.split("/")[1]
blob.name.split("/")[1] + ) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[3], encodeURIComponent(blob.name.split("/")[3]),
"hashedfilepath": hashAPIPath( "hashedfilepath": hashAPIPath(
"/api/file/downloadblob?container=" + "/api/file/downloadblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
blob.name.split("/")[0] + encodeURIComponent(
"/" + blob.name.split("/")[0] + "/" + blob.name.split("/")[1]
blob.name.split("/")[1] + ) +
"&blobname=" + "&blobname=" +
blob.name encodeURIComponent(blob.name.split("/")[3])
), ),
"deletepath": "deletepath":
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
@@ -1434,11 +1434,11 @@ export const getRepsFilesBlobs = async (
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
blob.name.split("/")[0] + encodeURIComponent(
"/" + blob.name.split("/")[0] + "/" + blob.name.split("/")[1]
blob.name.split("/")[1] + ) +
"&blobname=" + "&blobname=" +
blob.name.split("/")[3] encodeURIComponent(blob.name.split("/")[3])
), ),
"hashgetblobs": hashAPIPath( "hashgetblobs": hashAPIPath(
"/api/file/getbloblist?container=" + "/api/file/getbloblist?container=" +
@@ -1450,7 +1450,7 @@ export const getRepsFilesBlobs = async (
), ),
}); });
} }
//console.log("blobObj:", blobObj); console.log("blobObj:", blobObj);
return blobObj; return blobObj;
}; };
+8 -10
View File
@@ -1762,9 +1762,9 @@ export const deleteBlob = async (
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blobName + encodeURIComponent(blobName) +
deleteblobhash deleteblobhash
); );
return res.data; return res.data;
@@ -1785,11 +1785,9 @@ export const deleteRepBlob = async (
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID + "/" + filenamePrefix) +
"/" +
filenamePrefix +
"&blobname=" + "&blobname=" +
blobName + encodeURIComponent(blobName) +
deleteblobhash deleteblobhash
); );
return res.data; return res.data;
@@ -1843,14 +1841,14 @@ export const getProgressFromBlob = async (containerName, casereference) => {
const res = await axios.get( const res = await axios.get(
BASE_URL + BASE_URL +
"/api/file/getprogressobjblob?container=" + "/api/file/getprogressobjblob?container=" +
containerName + encodeURIComponent(containerName) +
"&casefolderID=" + "&casefolderID=" +
casereference + encodeURIComponent(casereference) +
hashAPIPath( hashAPIPath(
"/api/file/getprogressobjblob?container=" + "/api/file/getprogressobjblob?container=" +
containerName + encodeURIComponent(containerName) +
"&casefolderID=" + "&casefolderID=" +
casereference encodeURIComponent(casereference)
) )
); );
return res.data; return res.data;
+2 -5
View File
@@ -17,12 +17,9 @@ ApiProxy.get(async (req, res) => {
"/api/file/deleteblob?container=" + "/api/file/deleteblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blobName; encodeURIComponent(blobName);
//console.log(hashAPIPath(checkquerypath), checkHash);
//console.log(hashAPIPath(checkquerypath) == "&hash=" + checkHash);
if (hashAPIPath(checkquerypath) == "&hash=" + checkHash) { if (hashAPIPath(checkquerypath) == "&hash=" + checkHash) {
await deleteBlob( await deleteBlob(
+2 -8
View File
@@ -20,15 +20,9 @@ ApiProxy.get(async (req, res) => {
"/api/file/downloadblob?container=" + "/api/file/downloadblob?container=" +
containerName + containerName +
"&casefolderID=" + "&casefolderID=" +
casefolderID + encodeURIComponent(casefolderID) +
"&blobname=" + "&blobname=" +
blobName.trim(); encodeURIComponent(blobName.trim());
// console.log(checkquerypath);
// console.log(hashAPIPath(checkquerypath));
// console.log(req.query);
if (hashAPIPath(checkquerypath) == "&hash=" + checkHash) { if (hashAPIPath(checkquerypath) == "&hash=" + checkHash) {
const bloblocation = const bloblocation =