【问题标题】:Base64: how to encode / decode the entire HTML code of a pageBase64:如何编码/解码页面的整个 HTML 代码
【发布时间】:2016-12-16 11:06:45
【问题描述】:

我正在尝试对页面进行编码:

btoa(document.querySelector('html').innerHTML)

但它不适用于此类数据,有谁知道,如何做到这一点?

【问题讨论】:

  • 您只想对页面文本进行编码吗??
  • 这只是文本...我认为@pradeep1991singh 的意思是,您是否要包括CSS、图像等等等。
  • 如果要验证html,那么您可以在btoa之前使用JSON.stringify,在atob之后使用JSON.parse
  • 如果只需要检测变化,JSON stringify 还不够吗? base64 编码能给你带来什么?
  • base64 编码将是巨大的,而且这种怪物的时间负载超过了它可能提供的任何好处。

标签: javascript google-chrome firefox phantomjs base64


【解决方案1】:

Unicode 字符可能是这个原因。尝试使用 Mozilla 网站 (https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/btoa) 中的这个示例:

function utoa(str) {
    return window.btoa(unescape(encodeURIComponent(str)));
}

function atou(str) {
    return decodeURIComponent(escape(window.atob(str)));
}

// Usage:
utoa('✓ à la mode'); // 4pyTIMOgIGxhIG1vZGU=
atou('4pyTIMOgIGxhIG1vZGU='); // "✓ à la mode"

utoa('I \u2661 Unicode!'); // SSDimaEgVW5pY29kZSE=
atou('SSDimaEgVW5pY29kZSE='); // "I ♡ Unicode!"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-04-04
    • 2017-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多