Documentation ¶
Index ¶
Constants ¶
const ( DefaultRsHost = "rs.qiniu.com" DefaultRsfHost = "rsf.qiniu.com" DefaultAPIHost = "api.qiniu.com" )
资源管理相关的默认域名
const UcHost = "https://uc.qbox.me"
UcHost 为查询空间相关域名的API服务地址
Variables ¶
var ZoneHuadong = Zone{ SrcUpHosts: []string{ "up.qiniup.com", "up-nb.qiniup.com", "up-xs.qiniup.com", }, CdnUpHosts: []string{ "upload.qiniup.com", "upload-nb.qiniup.com", "upload-xs.qiniup.com", }, RsHost: "rs.qiniu.com", RsfHost: "rsf.qiniu.com", APIHost: "api.qiniu.com", IovipHost: "iovip.qbox.me", }
ZoneHuadong 表示华东机房
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { Zone *Zone //空间所在的机房 UseHTTPS bool //是否使用https域名 UseCdnDomains bool //是否使用cdn加速域名 }
Config 为文件上传,资源管理等配置
type FormUploader ¶
type FormUploader struct {
// contains filtered or unexported fields
}
FormUploader 表示一个表单上传的对象
func NewFormUploader ¶
func NewFormUploader(cfg *Config) *FormUploader
NewFormUploader 用来构建一个表单上传的对象
func (*FormUploader) PutFile ¶
func (p *FormUploader) PutFile( ctx context.Context, ret interface{}, uptoken, key, localFile string, extra *PutExtra) (err error)
PutFile 用来以表单方式上传一个文件,和 Put 不同的只是一个通过提供文件路径来访问文件内容,一个通过 io.Reader 来访问。
ctx 是请求的上下文。 ret 是上传成功后返回的数据。如果 uptoken 中没有设置 callbackUrl 或 returnBody,那么返回的数据结构是 PutRet 结构。 uptoken 是由业务服务器颁发的上传凭证。 key 是要上传的文件访问路径。比如:"foo/bar.jpg"。注意我们建议 key 不要以 '/' 开头。另外,key 为空字符串是合法的。 localFile 是要上传的文件的本地路径。 extra 是上传的一些可选项,可以指定为nil。详细见 PutExtra 结构的描述。
type PutExtra ¶
type PutExtra struct { // 可选,用户自定义参数,必须以 "x:" 开头。若不以x:开头,则忽略。 Params map[string]string // 可选,当为 "" 时候,服务端自动判断。 MimeType string // 上传事件:进度通知。这个事件的回调函数应该尽可能快地结束。 OnProgress func(fsize, uploaded int64) }
PutExtra 为表单上传的额外可选项
type PutPolicy ¶
type PutPolicy struct { Scope string `json:"scope"` Expires uint32 `json:"deadline"` // 截止时间(以秒为单位) IsPrefixalScope int `json:"isPrefixalScope,omitempty"` InsertOnly uint16 `json:"insertOnly,omitempty"` // 若非0, 即使Scope为 Bucket:Key 的形式也是insert only DetectMime uint8 `json:"detectMime,omitempty"` // 若非0, 则服务端根据内容自动确定 MimeType FsizeLimit int64 `json:"fsizeLimit,omitempty"` MimeLimit string `json:"mimeLimit,omitempty"` SaveKey string `json:"saveKey,omitempty"` CallbackFetchKey uint8 `json:"callbackFetchKey,omitempty"` CallbackURL string `json:"callbackUrl,omitempty"` CallbackHost string `json:"callbackHost,omitempty"` CallbackBody string `json:"callbackBody,omitempty"` CallbackBodyType string `json:"callbackBodyType,omitempty"` ReturnURL string `json:"returnUrl,omitempty"` ReturnBody string `json:"returnBody,omitempty"` PersistentOps string `json:"persistentOps,omitempty"` PersistentNotifyURL string `json:"persistentNotifyUrl,omitempty"` PersistentPipeline string `json:"persistentPipeline,omitempty"` EndUser string `json:"endUser,omitempty"` DeleteAfterDays int `json:"deleteAfterDays,omitempty"` FileType int `json:"fileType,omitempty"` }
PutPolicy 表示文件上传的上传策略
type PutRet ¶
type PutRet struct { Hash string `json:"hash"` PersistentID string `json:"persistentId"` Key string `json:"key"` }
PutRet 为七牛标准的上传回复内容。 如果使用了上传回调或者自定义了returnBody,那么需要根据实际情况,自己自定义一个返回值结构体
type UcQueryRet ¶
type UcQueryRet struct { TTL int `json:"ttl"` Io map[string]map[string][]string `json:"io"` Up map[string]UcQueryUp `json:"up"` }
UcQueryRet 为查询请求的回复
type UcQueryUp ¶
type UcQueryUp struct { Main []string `json:"main,omitempty"` Backup []string `json:"backup,omitempty"` Info string `json:"info,omitempty"` }
UcQueryUp 为查询请求回复中的上传域名信息
type UploadClient ¶
UploadClient struct
func NewUploadClient ¶
func NewUploadClient(ak, sk, bucket string) (UploadClient, error)
NewUploadClient constructor
func (UploadClient) UploadFile ¶
func (cli UploadClient) UploadFile(key, localFile string) (retKey, retHash string, err error)
UploadFile ...