>  기사  >  백엔드 개발  >  + base64에서 html/template golang 사용

+ base64에서 html/template golang 사용

WBOY
WBOY앞으로
2024-02-14 18:00:111052검색

+ 在 base64 中使用 html/template golang

이 기사에서는 PHP 편집자 Xinyi가 golang을 사용하여 html/템플릿 템플릿에 base64에 이미지를 삽입하는 방법을 소개합니다. 웹 개발에서 우리는 base64 형식으로 HTML 템플릿에 이미지를 삽입해야 하는 상황에 자주 직면합니다. 이 접근 방식은 http 요청을 줄이고 웹 페이지 로딩 속도를 향상시킬 수 있습니다. 이 기사에서는 golang의 html/template 패키지를 사용하여 이 기능을 구현하는 방법을 자세히 설명하여 웹 페이지 로딩을 보다 효율적으로 만듭니다.

질문 내용

동료들에게 경의를 표합니다.

HTML 템플릿에서 base64 형식의 데이터 매트릭스를 반환해야 합니다. 템플릿에서는 다음과 같습니다. <img src="data:image/png;base64,{{.Datamatrix}}" alt="Datamatrix"/>

Base64 데이터를 .Datamatrix에 삽입합니다. 모두 괜찮습니다. Base64는 유효하고 모두(다른 디코더에서 확인됨)이지만 데이터를 템플릿에 전달할 때 +(plus) 符号时,符号更改为 &#43

base64는 다음과 같이 인코딩합니다. base64.StdEncoding.EncodeToString(b)

또한 시도했지만 base64.URLEncoding.EncodeToString(b) 더 많은 기호가 엉망이 되었습니다.

매개변수를 문자열 유형의 구조 필드로 전달

다른 방식으로 전달해 보았습니다. 즉, 유형 template.HTML,使用template.HTMLEscapeStringtemplate.URLEscapeStringtemplate.JSEscapeString으로 전달했지만 결과가 없습니다.

이 문제에 대한 효과적인 해결책을 제공해 주시면 매우 감사하겠습니다.

예 https://go.dev/play/p/c_s-wPl6dMT

github 관련 문제: https://github.com/golang/go/issues/42506

P>S> 텍스트/템플릿으로 변경하는 것도 옵션이 아닙니다. 실제 프로젝트에서는 템플릿에 몇 가지 사항을 삽입했지만 텍스트/템플릿 라이브러리에서는 작동하지 않습니다.

해결 방법

놀랍게도 충분한 텍스트/템플릿이 모든 문제를 해결했습니다. 다른 주사에서는 새로운 문제가 발생하지 않았습니다.

https://www.php.cn/link/c1e247e2235eb596c080297d6903cf39

위 내용은 + base64에서 html/template golang 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제