本文整理汇总了Golang中encoding/base64.NewEncoder函数的典型用法代码### 示例。如果您正苦于以下问题:Golang NewEncoder函数的具体用法?Golang NewEncoder怎么用?Golang NewEncoder使用的例子?那么恭喜您, 这里精选的函数代码### 示例或许可以为您提供帮助。

在下文中一共展示了NewEncoder函数的20个代码### 示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码### 示例。

示例1: main

func main() {
    binding := flag.String("b", "post", "Binding. Values are post, redirect, or nourl.")
    flag.Parse()

    input, e := ioutil.ReadAll(os.Stdin)
    if e != nil {
        log.Fatal(e)
    }

    if *binding == "redirect" {
        deflated := deflate(input)

        buf := bytes.Buffer{}
        encoder := base64.NewEncoder(base64.StdEncoding, &buf)
        encoder.Write(deflated)
        encoder.Close()

        fmt.Print(percentURLEncode(buf.String()))

    } else if *binding == "nourl" {
        deflated := deflate(input)

        encoder := base64.NewEncoder(base64.StdEncoding, os.Stdout)
        encoder.Write(deflated)
        encoder.Close()

    } else if *binding == "post" {
        encoder := base64.NewEncoder(base64.StdEncoding, os.Stdout)
        encoder.Write(input)
        encoder.Close()
    } else {
        log.Fatal("Invalid Binding.")
    }

}

开发者ID:kazuyamamoto,项目名称:samlenc,代码行数:35,代码来源:samlenc.go

示例2: SendMulti

// only allows single content
func SendMulti(auth Auth, email MultipartEmail) error {
    if len(email.Content) != 1 {
        panic("only 1 content supported")
    }
    a := smtp.PlainAuth("", auth.User, auth.Password, auth.Host)
    buf := new(bytes.Buffer)
    boundary := randomBoundary()
    header := make(textproto.MIMEHeader)
    header.Set("Subject", email.Subject)
    header.Set("From", email.From)
    header.Set("To", strings.Join(email.To, ", "))
    if len(email.Cc) > 0 {
        header.Set("Cc", strings.Join(email.Cc, ", "))
    }
    header.Set("MIME-Version", "1.0")
    header.Set("Content-Type", "multipart/mixed; boundary="+boundary)
    for k, v := range header {
        for _, s := range v {
            fmt.Fprintf(buf, "%s: %s%s", k, textproto.TrimString(s), crlf)
        }
    }
    fmt.Fprint(buf, crlf)
    mm := multipart.NewWriter(buf)
    mm.SetBoundary(boundary)
    {
        content := email.Content[0]
        header := make(textproto.MIMEHeader)
        header.Set("Content-Type", content.Type)
        header.Set("Content-Transfer-Encoding", "base64")
        part, err := mm.CreatePart(header)
        if err != nil {
            return err
        }
        lw := &lineWriter{Writer: part, Length: 75}
        e := base64.NewEncoder(base64.StdEncoding, lw)
        e.Write(content.Data)
        e.Close()
    }
    for _, a := range email.Attachments {
        header := make(textproto.MIMEHeader)
        header.Set("Content-Type", fmt.Sprintf(`%s; name="%s"`, a.Type, a.Filename))
        if len(a.ContentID) > 0 {
            header.Set("Content-ID", fmt.Sprintf(`<%s>`, a.ContentID))
        }
        header.Set("Content-Disposition", fmt.Sprintf(`attachment; filename="%s"`, a.Filename))
        header.Set("Content-Transfer-Encoding", "base64")
        part, err := mm.CreatePart(header)
        if err != nil {
            return err
        }
        lw := &lineWriter{Writer: part, Length: 75}
        e := base64.NewEncoder(base64.StdEncoding, lw)
        e.Write(a.Data)
        e.Close()
    }
    mm.Close()
    addr := fmt.Sprintf("%s:%d", auth.Host, auth.Port)
    return smtp.SendMail(addr, a, email.From, email.To, buf.Bytes())

}

开发者ID:xoba,项目名称:goutil,代码行数:61,代码来源:smtpc.go

示例3: base64encode

func base64encode(src []byte) string {
    var buf bytes.Buffer
    encoder := base64.NewEncoder(base64.StdEncoding, &buf)
    encoder.Write(src)
    encoder.Close()
    return buf.String()
}

开发者ID:mschlimp,项目名称:lemming,代码行数:7,代码来源:oauth.go

示例4: encodedAuth

func encodedAuth(user, pwd string) string {
    var buf bytes.Buffer
    encoder := base64.NewEncoder(base64.StdEncoding, &buf)
    encoder.Write([]byte(user + ":" + pwd))
    encoder.Close()
    return buf.String()
}

开发者ID:pvulgaris,项目名称:httpstream,代码行数:7,代码来源:stream.go

示例5: signV2

// signV2 sign the request before Do() (AWS Signature Version 2).
func signV2(req http.Request, accessKeyID, secretAccessKey string) *http.Request {
    // Signature calculation is not needed for anonymous credentials.
    if accessKeyID == "" || secretAccessKey == "" {
        return &req
    }

    // Initial time.
    d := time.Now().UTC()

    // Add date if not present.
    if date := req.Header.Get("Date"); date == "" {
        req.Header.Set("Date", d.Format(http.TimeFormat))
    }

    // Calculate HMAC for secretAccessKey.
    stringToSign := getStringToSignV2(req)
    hm := hmac.New(sha1.New, []byte(secretAccessKey))
    hm.Write([]byte(stringToSign))

    // Prepare auth header.
    authHeader := new(bytes.Buffer)
    authHeader.WriteString(fmt.Sprintf("%s %s:", signV2Algorithm, accessKeyID))
    encoder := base64.NewEncoder(base64.StdEncoding, authHeader)
    encoder.Write(hm.Sum(nil))
    encoder.Close()

    // Set Authorization header.
    req.Header.Set("Authorization", authHeader.String())

    return &req
}

开发者ID:ptrimble,项目名称:dreamhost-personal-backup,代码行数:32,代码来源:request-signature-v2.go

最后编辑: kuteng  文档更新时间: 2021-08-23 19:14   作者:kuteng