美文网首页Go
Go Web开发,用Base64作为图片URL时遇到#Zgotm

Go Web开发,用Base64作为图片URL时遇到#Zgotm

作者: 钱铜 | 来源:发表于2018-03-31 10:55 被阅读89次

    Go Web开发时,把图片用base64编码后,作为其URL,但是输出了#ZgotmplZ

    变量:
    imgURL := "https://upload.jianshu.io/users/upload_avatars/10187022/67933a30-36b4-4452-9eda-ff55e65f4ebc?imageMogr2/auto-orient/strip|imageView2/1/w/96/h/96"
    imgBase64 := "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wAARCABgAGADASIAAhEBAxEB/8QAGgAAAgMBAQAAAAAAAAAAAAAAAAECAwQFBv/EADEQAAEDAgQCCAYDAQAAAAAAAAEAAhEDIQQSMUFRcQUTIjJSYYHBBiNykaGxFEJDsv/EABcBAQEBAQAAAAAAAAAAAAAAAAABAgP/xAAbEQEBAQEBAAMAAAAAAAAAAAAAARECEiExUf/aAAwDAQACEQMRAD8A8CmFFOUDQhOECQmnFkEU0oThAHySQhAkIQgSYSTCBpqKsaAWkyJ4cUC3UoTa26008K+pIaJgSi5ayEJELTVoOp2cCFnciIpJlJAkIQgSEJhAwRCsbpJAUGwrWXMazsLoL8NTa93eyxxC998K4HAVMK51XK5/B1l4Cgcra0eEf9BbKGPq0xlpk+izZrfNjq/E9DD0sY8UXAtm0Ly9TWy14jEuqk5jdZHm8bqyYnV2qyolSKSrJITARogimElKI1CAE7GFMEtiCkBBsZRBJQXUX9mrM90fsJOOSpDhpqDZRp2p1fpH7CrmblNFpcQQQIBuLyokiZFyUyWCnYGTuo2yi5BUUiJ2KMoapvIyt7UgKMF0kXQLsxCRLR5ojLqFF0TZVEurIZnJCtrNaGsLSSYvPstWGdhh1ReH5gZdHt9wuxVwXRuObnp4mvTe6ScwaR+AsXqT7anOvNMEndWAHgVtr9Evou+ViWvHIhZzhMWDaDyKepTLFTRFOpfb3CpiBoVpNHFsmaDoOvYlVEvbZ1MA+bYViVAyYAClbLEX3UTUn+rQfJAqRq1pVAWT7Jw4CBb1T60bUwfUoLx4APUp8hAOLu1ug0wTawS6weAfcpZx4fyiNDmN1bUAO/kujh6tDqWtmp1zdHMHZjzB35LliBsrW1HDks9c63K63VvLM+YEcQVKmC27gftK59Ku9kFpgrQyu15v8t3EaFc/Ndd106NVgPabA4iy2h1BwGacp3IkLjCpUZEmRx1V9LEluwvqFmz8V0H4LB1QZpYd/NoCw4jofB6/xsv0OKtkPYXUi4xq3gqHVnC7akc7JLUyMFXonDAnK+qzmAVlqdHAd2s082wuo6rVds1/JZqj2O7zS30W51WbzHNdgajdCx3Jyrdhqrf83Hldb3AHuOB9VU4Oadwty1jzH//Z"
    
    模板:
    <img src="{{.imgURL}}" alt="" srcset="">
    <img src="{{.imgBase64}}" alt="" srcset="">
    
    输出:
    <img src="https://upload.jianshu.io/users/upload_avatars/10187022/67933a30-36b4-4452-9eda-ff55e65f4ebc?imageMogr2/auto-orient/strip%7cimageView2/1/w/96/h/96" alt="" srcset="">
    <img src="#ZgotmplZ" alt="" srcset=""> 
    
    

    按照文档里的说法,是将不安全的context过滤了,http://docscn.studygolang.com/pkg/html/template/

    If used in an unsafe context, then the value might be filtered out:
    
    Context                          {{.}} After
    <a href="{{.}}">                 #ZgotmplZ
    

    解决方法:

    var imgBase64 template.URL //需要将其设置为`template.URL `类型
    
    imgBase64 = "data:image/jpeg;base64,..."
    

    输出:

    <img src="data:image/jpeg;base64,..." alt="" srcset="">
    

    相关文章

      网友评论

        本文标题:Go Web开发,用Base64作为图片URL时遇到#Zgotm

        本文链接:https://www.haomeiwen.com/subject/vqkgcftx.html