Javascript кодировать текст, избегая прямой косой черты, используя обратную косую черту - PullRequest
0 голосов
/ 14 января 2019

У меня есть текст, который является строкой base 64, и я хотел закодировать этот код base64, экранируя специальный символ /, используя \/.

Я использовал encodeURIComponent и str.replace(/\//g, '\\/'); но он получит строку с \/

если я проиллюстрирую больше на примере

base64string

"samplebase64/samplebase64/samplebase64/samplebase64+samplebase64"

Мне нужно это преобразовать в

base64encodedstring

"samplebase64\/samplebase64\/samplebase64\/samplebase64+samplebase64"

1 Ответ

0 голосов
/ 14 января 2019

Замените все символы "/" в строке base 64 на "% 2F" или используйте encodeURIComponent со строками base64 на "/". Обратите внимание, что если у вас есть несколько строк Base64, которые должны быть включены в структурированный URL, вам придется использовать encodeURIComponent для них отдельно.

var myOrderedBase64Array = ['base/641', base/642];    

var uri = myOrderedBase64Array.map(function(item){

   return encodeURIComponent(item);
}).join('/');
...