Documentation
¶
Overview ¶
Package datauri 提供 data URI 的解析、编码与文本序列化能力。
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrInvalidDataURI = errors.New("invalid data uri")
ErrInvalidDataURI 表示输入不符合 data URI 语法。
Functions ¶
This section is empty.
Types ¶
type DataURI ¶
type DataURI struct {
// MediaType 是 data URI 中声明的媒体类型,例如 text/plain 或 image/png。
MediaType string
// Params 保存媒体类型后的附加参数,例如 charset。
Params map[string]string
// Data 是解码后的原始数据体。
Data []byte
}
DataURI 表示一个解析后的 data URI。
func Parse ¶
Parse 解析 data URI 文本,或将无前缀输入按 base64 数据体处理。
Example ¶
package main
import (
"fmt"
"github.com/octohelm/x/datauri"
)
func main() {
d, err := datauri.Parse("data:text/plain;charset=utf-8;base64,aGVsbG8=")
if err != nil {
panic(err)
}
fmt.Println(d.MediaType)
fmt.Println(d.Params["charset"])
fmt.Println(string(d.Data))
}
Output: text/plain utf-8 hello
func (*DataURI) Encoded ¶
Encoded 按指定是否使用 base64 返回 data URI 文本。
Example ¶
package main
import (
"fmt"
"github.com/octohelm/x/datauri"
)
func main() {
d := &datauri.DataURI{
MediaType: "text/plain",
Data: []byte("hello world"),
}
fmt.Println(d.Encoded(false))
}
Output: data:text/plain,hello%20world
func (DataURI) MarshalText ¶
MarshalText 将 data URI 编码为文本。
func (DataURI) OpenAPISchemaFormat ¶
OpenAPISchemaFormat 返回 data URI 的 OpenAPI format 名称。
func (*DataURI) UnmarshalText ¶
UnmarshalText 从文本解析 data URI。
Click to show internal directories.
Click to hide internal directories.