将gmail api用于Go时无法从多部分/签名类型下载附件

I'm trying to develop a simple utility for download a whole list of attachments by a specific label in Gmail. I'm using the official gmail api for Go and I just started with the sample written here then I wrote my own code to archive my goal:

fmt.Println("Labels:")
for _, label := range labelList.Labels {

    fmt.Printf("
- %s id: %s
", label.Name, label.Id)

    if label.Id == "Label_N" {

        messageList, _ := srv.Users.Messages.List(user).LabelIds(label.Id).Do()
        if err != nil {
            log.Fatalf("Error: %v", err)
        }

        for _, msg := range messageList.Messages {

            // look for message
            message, err := srv.Users.Messages.Get(user, msg.Id).Do()
            if err != nil {
                log.Fatalf("Unable to retrieve message: %v", err)
            }

            mailReceivedDate := time.Unix(0, message.InternalDate*int64(time.Millisecond)).Format(time.RFC3339Nano)
            fmt.Println("______________________________________________")
            fmt.Printf("Content-Type: %s
", message.Payload.MimeType)
            fmt.Printf("From: %s
", message.Payload.Headers[7].Value)

            if len(message.Payload.Parts) > 0 {
                for _, p := range message.Payload.Parts {
                    fmt.Printf("Filename: %s
", p.Filename)
                    fmt.Printf("Attachment ID: %s
", p.Body.AttachmentId)
                    if isPdfAttachment(p.MimeType) {
                        attach, err := srv.Users.Messages.Attachments.Get(user, message.Id, p.Body.AttachmentId).Do()
                        decoded, _ := base64.URLEncoding.DecodeString(attach.Data)
                        if err != nil {
                            log.Fatalf("Unable to retrieve attachment: %v", err)
                        }
                        p.Filename = mailReceivedDate + "_" + p.Filename
                        fmt.Printf("File to write:   %s - Type: %s
", p.Filename, p.MimeType)
                        err = ioutil.WriteFile(p.Filename, decoded, 0644)
                        if err != nil {
                            log.Fatalf("Unable to save attachment: %v", err)
                        }
                    }
                }
            }
        }
    }
}

The problem is that I don't receive any AttachmentId when message MimeType is "multipart/signed" (the email contains 1 pdf file).

Logs

What should I do to for download attachments from this kind of email? Can someone help me?