V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yuzo555
V2EX  ›  程序员

制作了一个 Base64 在线编码解码的网站,大家给点意见

  •  1
     
  •   yuzo555 ·
    A-Circle-Zhang · 2015-11-04 01:54:52 +08:00 · 9466 次点击
    这是一个创建于 3314 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在研究过程中经常会用到 Base64 编码解码,这时候临时写程序也有点麻烦,网上也有一些这样的网站,但我想要的功能没有(比如字节流输入),于是干脆自己做了个,发现还不错,就放上线了。
    地址是: http://base64.us/

    57 条回复    2015-11-05 17:09:09 +08:00
    Andy1999
        1
    Andy1999  
       2015-11-04 03:15:48 +08:00 via iPhone
    好东西,赞一个!
    gzlock
        2
    gzlock  
       2015-11-04 04:10:28 +08:00 via Android
    gzlock
        3
    gzlock  
       2015-11-04 04:11:17 +08:00 via Android
    @gzlock 不过 base64 文件是没有的
    Slienc7
        4
    Slienc7  
       2015-11-04 07:23:10 +08:00
    http://www.base64de(en)code.org/

    建议加一个解迅雷、旋风的特殊链接的功能,那个每次都要逐个解。
    master13
        5
    master13  
       2015-11-04 08:13:17 +08:00
    认为 LZ 网站简约的外观做的很好

    我更期待 MD5 的功能,希望 LZ 能做出不同的、具有 LZ 特色的
    JohnH
        6
    JohnH  
       2015-11-04 08:18:39 +08:00
    楼主可以像 http://tool.chinaz.com/Tools/Base64.aspx 这个网址一样,两个文本框一个就是纯粹的原文,另一个就都是加密后的内容
    smithtel
        7
    smithtel  
       2015-11-04 08:20:27 +08:00
    用 C 写个客户端不就行了。。
    xiaozi
        8
    xiaozi  
       2015-11-04 08:31:14 +08:00   ❤️ 1
    zjgsamuel
        9
    zjgsamuel  
       2015-11-04 08:34:24 +08:00
    其实我就是想问一下 LZ .us 的域名 在哪里注册的? 如果提供的注册信息不是美国的地址啥的 被回收的风险大不?
    int64ago
        10
    int64ago  
       2015-11-04 08:37:47 +08:00
    还不错
    不过这东西太多了
    int64ago
        11
    int64ago  
       2015-11-04 08:41:05 +08:00
    居然用的不是 [CryptoJS]( https://code.google.com/p/crypto-js/) ,怪不得那么多没开通……

    用这个库的话岂不是代码减少一半并且其它的模块也一并写好了?
    anthozoan77
        12
    anthozoan77  
       2015-11-04 08:59:15 +08:00
    用 openssl...
    ooTwToo
        13
    ooTwToo  
       2015-11-04 09:17:25 +08:00
    @xiaozi 卧槽 见到站长了
    QQ1685425675
        14
    QQ1685425675  
       2015-11-04 09:19:37 +08:00
    点赞
    zhicheng
        15
    zhicheng  
       2015-11-04 09:20:57 +08:00 via Android
    用 Python 的表示完全不需要。
    import base64
    base64.b64decode()
    imn1
        16
    imn1  
       2015-11-04 09:28:12 +08:00
    这个手机还有点用,所以建议页面要适应手机
    桌面系统的话,客户端解决很方便

    还有,不要习惯于说“最好的……”,又不是业务代表在做销售,这不是技术人员的风格,如果是写给妹纸看的就当我没说
    wencan
        17
    wencan  
       2015-11-04 09:32:15 +08:00
    @zhicheng 就是
    用 nodejs 的也不需要

    > new Buffer("www.v2ex.com").toString("base64")
    'd3d3LnYyZXguY29t'
    > new Buffer("d3d3LnYyZXguY29t", "base64").toString()
    'www.v2ex.com'
    binjoo
        18
    binjoo  
       2015-11-04 09:38:29 +08:00
    这个比较方便。。。

    http://tool.oschina.net/
    raysonx
        19
    raysonx  
       2015-11-04 09:39:58 +08:00 via Android
    Linux
    raysonx
        20
    raysonx  
       2015-11-04 09:40:23 +08:00 via Android
    Linux 下自帶
    liad
        21
    liad  
       2015-11-04 09:41:30 +08:00
    http://tool.oschina.net/

    Google Chrome: Console
    btoa('www.v2ex.com')
    "d3d3LnYyZXguY29t"
    nasta
        22
    nasta  
       2015-11-04 09:43:26 +08:00
    用 alert -1
    lizhenda
        23
    lizhenda  
       2015-11-04 09:49:00 +08:00
    界面不错,很漂亮
    Havee
        24
    Havee  
       2015-11-04 10:05:58 +08:00
    Linux & OS X 都自带,终端下直接可用
    breeswish
        25
    breeswish  
       2015-11-04 10:15:32 +08:00
    命令行多方便

    $ base64
    测试中文 123
    5rWL6K+V5Lit5paHMTIzCg==

    $ base64 -D
    5rWL6K+V5Lit5paHMTIzCg==
    测试中文 123

    $ md5sum
    123
    ba1f2511fc30423bdbb183fe33f3dd0f -

    $ sha1sum
    123
    a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0 -

    $ shasum -a 256
    123
    181210f8f9c779c26da1d9b2075bde0127302ee0e3fca38c9a83f5b1dd8e5d3b -
    xiaozi
        26
    xiaozi  
       2015-11-04 12:19:58 +08:00
    @ooTwToo 被你发现了
    alect
        27
    alect  
       2015-11-04 12:29:48 +08:00
    楼主在做一个英文版挂上 google Adsense 就可以赚钱了
    cnxh
        28
    cnxh  
       2015-11-04 12:37:14 +08:00
    base64 转码应该是跟编码还有关系的, 我之前也做了个小工具: https://1024tools.com/base64
    em70
        29
    em70  
       2015-11-04 12:38:44 +08:00
    几个语言的 base64 还部分不一样,可以提供一个 API 相互转化的或者提供各种语言的标准 base64 函数实现代码,这样很多人经常会来了
    w88975
        30
    w88975  
       2015-11-04 12:42:11 +08:00
    哈哈 我最近也在撸一个前端工具的网站,不过是用 react 来练手的,刚撸好框架,准备把所有的功能点以 package 的形式来动态加载,也就是可以自己写功能插件.
    knightdf
        31
    knightdf  
       2015-11-04 12:42:41 +08:00
    tool.oschina.net, 我为什么不用这个。。。
    chown9835
        32
    chown9835  
       2015-11-04 12:48:38 +08:00
    蠻不錯的,不用經過伺服器回傳快很多,期待 url encode 跟其他兩個尚未開通的功能釋出^^
    ajan
        33
    ajan  
       2015-11-04 13:30:33 +08:00
    我也简单粗暴的写了个 http://fulicat.com/lab/xcode.html (各种编 /解码)



    honk
        34
    honk  
       2015-11-04 13:55:25 +08:00
    base64 的话, 直接浏览器 console 用 atob() 和 btoa()
    lution
        35
    lution  
       2015-11-04 14:02:09 +08:00
    好奇楼主.us 的域名是怎么申请下来的,不是条件比较严苛吗?
    iyaozhen
        36
    iyaozhen  
       2015-11-04 14:15:41 +08:00
    赞,很不错。 Data Url
    Showfom
        37
    Showfom  
       2015-11-04 14:34:08 +08:00 via iPhone
    @xiaozi 你域名在我这注册的 23333
    Showfom
        38
    Showfom  
       2015-11-04 14:34:26 +08:00 via iPhone
    @lution C3 P31 我只能帮到这儿了
    xuboying
        39
    xuboying  
       2015-11-04 14:51:01 +08:00
    来个 perl 版本的
    use MIME::Base64 qw(encode_base64);
    open(FILE, $ARGV[0]) or die "$!";
    binmode FILE;
    while (read(FILE, $buf, 60*57)) {
    print encode_base64($buf);
    }
    bumaociyuan
        40
    bumaociyuan  
       2015-11-04 14:59:27 +08:00
    ```
    $ echo to-decode | base64 -d
    $ echo to-encode | base64
    ```
    g00001
        41
    g00001  
       2015-11-04 15:54:32 +08:00
    原来是为了生成 DataURL ,发个 PC 客户端工具, aardio 代码实现,支持多线程、文件拖放。

    import win.ui;
    /*DSG{{*/
    var winform = win.form(text="HTMLayout Data Url 转换工具";left=-50;right=399;bottom=325;topmost=1)
    winform.add(
    edit={cls="edit";left=9;top=9;right=439;bottom=292;acceptfiles=1;db=1;dl=1;dr=1;dt=1;edge=1;hscroll=1;multiline=1;vscroll=1;z=1};
    static={cls="static";text="请将图片等文件拖放到上面的文本框中进行转换";left=11;top=300;right=433;bottom=324;db=1;dl=1;transparent=1;z=2}
    )
    /*}}*/

    import fsys;
    import fsys.mime;
    winform.edit.wndproc = function(hwnd,message,wParam,lParam){
    if( message == 0x233/*_WM_DROPFILES*/ ){
    if( winform.edit.busy ) return;

    var path = win.getDropFile(wParam)[1]
    if( fsys.isDir(path) ){
    winform.edit.text = "路径不能是一个目录"
    return;
    }

    var mime = fsys.mime.fromFile( path )
    if(!mime){
    winform.edit.text = "无效的文件格式";
    return;
    }

    winform.edit.busy = true;
    winform.edit.text = "正在转换,请稍候......";
    winform.edit.text = win.invoke(function(path,mime){
    import crypt.bin;
    return string.format('data:%s;base64,\r\n%s',mime,crypt.bin.encodeBase64( string.load(path) ) )
    } ,path,mime);
    winform.edit.busy = false;
    }
    }

    winform.show()
    win.loopMessage();
    blueset
        42
    blueset  
       2015-11-04 16:43:18 +08:00
    有没有计划支持 base64 转文件
    rale
        43
    rale  
       2015-11-04 17:53:02 +08:00
    杀鸡焉用牛刀
    sinux
        44
    sinux  
       2015-11-04 18:43:43 +08:00
    @breeswish 这个是在什么环境下啊?我怎么都没有的
    paw
        45
    paw  
       2015-11-04 19:53:30 +08:00
    我在 chrome 里输入 base 自动填充的是 http://base64.xpcha.com/ 。。。
    yuzo555
        46
    yuzo555  
    OP
       2015-11-04 21:17:50 +08:00
    @paw 哈哈我也是,一直用这个,它失效了我才想起自己搞一个。
    @blueset 暂时没有,主要是好像前端文件保存的方法,浏览器支持还很少。
    @lution 可以直接申请,不过要选择自己美国公民之类的,如果不是很可能会被回收,所以我打算先用着,之后要换域名。
    hienchu
        47
    hienchu  
       2015-11-04 21:19:56 +08:00
    赞域名!
    Ixizi
        48
    Ixizi  
       2015-11-04 21:23:17 +08:00
    N 年前用 PHP 写过一个,函数一调 so easy; 练练手还是可以的.
    crab
        49
    crab  
       2015-11-04 23:04:18 +08:00
    域名才是亮点啊。
    breeswish
        50
    breeswish  
       2015-11-05 00:16:21 +08:00
    @sinux *nix 自带
    lenran
        51
    lenran  
       2015-11-05 00:19:55 +08:00
    chrome 自带 base64 编解码
    dslwind
        52
    dslwind  
       2015-11-05 09:08:28 +08:00 via Android
    notepad++自带
    sinux
        53
    sinux  
       2015-11-05 10:44:08 +08:00
    @breeswish 我有看到命令行标题的变化,但是没有任何输出啊,一直卡在那了
    markyun
        54
    markyun  
       2015-11-05 11:04:15 +08:00
    @w88975 做的不错啊,能在线访问吗?
    breeswish
        55
    breeswish  
       2015-11-05 12:22:47 +08:00
    @sinux 回车, Ctrl+D ,来代表流的结束
    流结束后它才会给出 hash
    或者用 echo "xxxxxxx" | md5sum
    sinux
        56
    sinux  
       2015-11-05 12:55:12 +08:00
    @breeswish 受教,谢谢
    yuzo555
        57
    yuzo555  
    OP
       2015-11-05 17:09:09 +08:00
    @em70 加上了!
    @alect 表示翻译不能……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2697 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 15:11 · PVG 23:11 · LAX 07:11 · JFK 10:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.