Documentation
¶
Index ¶
- Constants
- Variables
- func BuildCustomUserAgent(...) string
- func GetAction(method string, url string) string
- type Addition
- type CaptchaTokenRequest
- type CaptchaTokenResponse
- type Common
- func (c *Common) GetCaptchaSign() (timestamp, sign string)
- func (c *Common) GetCaptchaToken() string
- func (c *Common) GetDeviceID() string
- func (c *Common) GetUserAgent() string
- func (c *Common) SetCaptchaToken(captchaToken string)
- func (c *Common) SetDeviceID(deviceID string)
- func (c *Common) SetUserAgent(userAgent string)
- func (c *Common) SetUserID(userID string)
- type ErrResp
- type File
- type Files
- type Media
- type OfflineDownloadResp
- type OfflineListResp
- type OfflineTask
- type Params
- type PikPak
- func (d *PikPak) Config() driver.Config
- func (d *PikPak) Copy(ctx context.Context, srcObj, dstDir model.Obj) error
- func (d *PikPak) DeleteOfflineTasks(ctx context.Context, taskIDs []string, deleteFiles bool) error
- func (d *PikPak) Drop(ctx context.Context) error
- func (d *PikPak) GetAddition() driver.Additional
- func (d *PikPak) GetUserID() error
- func (d *PikPak) Init(ctx context.Context) (err error)
- func (d *PikPak) Link(ctx context.Context, file model.Obj, args model.LinkArgs) (*model.Link, error)
- func (d *PikPak) List(ctx context.Context, dir model.Obj, args model.ListArgs) ([]model.Obj, error)
- func (d *PikPak) MakeDir(ctx context.Context, parentDir model.Obj, dirName string) error
- func (d *PikPak) Move(ctx context.Context, srcObj, dstDir model.Obj) error
- func (d *PikPak) OfflineDownload(ctx context.Context, fileUrl string, parentDir model.Obj, fileName string) (*OfflineTask, error)
- func (d *PikPak) OfflineList(ctx context.Context, nextPageToken string, phase []string) ([]OfflineTask, error)
- func (d *PikPak) Put(ctx context.Context, dstDir model.Obj, stream model.FileStreamer, ...) error
- func (d *PikPak) RefreshCaptchaTokenAtLogin(action, userID string) error
- func (d *PikPak) RefreshCaptchaTokenInLogin(action, username string) error
- func (d *PikPak) Remove(ctx context.Context, obj model.Obj) error
- func (d *PikPak) Rename(ctx context.Context, srcObj model.Obj, newName string) error
- type ReferenceResource
- type UploadTaskData
Constants ¶
View Source
const ( ClientID = "YNxT9w7GMdWvEOKa" ClientSecret = "dbw2OtmVEeuUvIptb1Coyg" ClientVersion = "1.46.2" PackageName = "com.pikcloud.pikpak" SdkVersion = "2.0.4.204000 " )
Variables ¶
View Source
var Algorithms = []string{
"PAe56I7WZ6FCSkFy77A96jHWcQA27ui80Qy4",
"SUbmk67TfdToBAEe2cZyP8vYVeN",
"1y3yFSZVWiGN95fw/2FQlRuH/Oy6WnO",
"8amLtHJpGzHPz4m9hGz7r+i+8dqQiAk",
"tmIEq5yl2g/XWwM3sKZkY4SbL8YUezrvxPksNabUJ",
"4QvudeJwgJuSf/qb9/wjC21L5aib",
"D1RJd+FZ+LBbt+dAmaIyYrT9gxJm0BB",
"1If",
"iGZr/SJPUFRkwvC174eelKy",
}
Functions ¶
func BuildCustomUserAgent ¶ added in v3.36.0
Types ¶
type Addition ¶
type Addition struct { driver.RootID Username string `json:"username" required:"true"` Password string `json:"password" required:"true"` ClientID string `json:"client_id" required:"true" default:"YNxT9w7GMdWvEOKa"` ClientSecret string `json:"client_secret" required:"true" default:"dbw2OtmVEeuUvIptb1Coyg"` DisableMediaLink bool `json:"disable_media_link"` }
type CaptchaTokenRequest ¶ added in v3.36.0
type CaptchaTokenResponse ¶ added in v3.36.0
type Common ¶ added in v3.36.0
type Common struct { CaptchaToken string UserID string // 必要值,签名相关 DeviceID string UserAgent string // 验证码token刷新成功回调 RefreshCTokenCk func(token string) // contains filtered or unexported fields }
func (*Common) GetCaptchaSign ¶ added in v3.36.0
GetCaptchaSign 获取验证码签名
func (*Common) GetCaptchaToken ¶ added in v3.36.0
func (*Common) GetDeviceID ¶ added in v3.36.0
func (*Common) GetUserAgent ¶ added in v3.36.0
func (*Common) SetCaptchaToken ¶ added in v3.36.0
func (*Common) SetDeviceID ¶ added in v3.36.0
func (*Common) SetUserAgent ¶ added in v3.36.0
type ErrResp ¶ added in v3.36.0
type File ¶
type File struct { Id string `json:"id"` Kind string `json:"kind"` Name string `json:"name"` CreatedTime time.Time `json:"created_time"` ModifiedTime time.Time `json:"modified_time"` Hash string `json:"hash"` Size string `json:"size"` ThumbnailLink string `json:"thumbnail_link"` WebContentLink string `json:"web_content_link"` Medias []Media `json:"medias"` }
type Media ¶
type Media struct { MediaId string `json:"media_id"` MediaName string `json:"media_name"` Video struct { Height int `json:"height"` Width int `json:"width"` Duration int `json:"duration"` BitRate int `json:"bit_rate"` FrameRate int `json:"frame_rate"` VideoCodec string `json:"video_codec"` AudioCodec string `json:"audio_codec"` VideoType string `json:"video_type"` } `json:"video"` Link struct { Url string `json:"url"` Token string `json:"token"` Expire time.Time `json:"expire"` } `json:"link"` NeedMoreQuota bool `json:"need_more_quota"` VipTypes []interface{} `json:"vip_types"` RedirectLink string `json:"redirect_link"` IconLink string `json:"icon_link"` IsDefault bool `json:"is_default"` Priority int `json:"priority"` IsOrigin bool `json:"is_origin"` ResolutionName string `json:"resolution_name"` IsVisible bool `json:"is_visible"` Category string `json:"category"` }
type OfflineDownloadResp ¶ added in v3.36.0
type OfflineDownloadResp struct { File *string `json:"file"` Task OfflineTask `json:"task"` UploadType string `json:"upload_type"` URL struct { Kind string `json:"kind"` } `json:"url"` }
添加离线下载响应
type OfflineListResp ¶ added in v3.36.0
type OfflineListResp struct { ExpiresIn int64 `json:"expires_in"` NextPageToken string `json:"next_page_token"` Tasks []OfflineTask `json:"tasks"` }
离线下载列表
type OfflineTask ¶ added in v3.36.0
type OfflineTask struct { Callback string `json:"callback"` CreatedTime string `json:"created_time"` FileID string `json:"file_id"` FileName string `json:"file_name"` FileSize string `json:"file_size"` IconLink string `json:"icon_link"` ID string `json:"id"` Kind string `json:"kind"` Message string `json:"message"` Name string `json:"name"` Params Params `json:"params"` Phase string `json:"phase"` // PHASE_TYPE_RUNNING, PHASE_TYPE_ERROR, PHASE_TYPE_COMPLETE, PHASE_TYPE_PENDING Progress int64 `json:"progress"` ReferenceResource ReferenceResource `json:"reference_resource"` Space string `json:"space"` StatusSize int64 `json:"status_size"` Statuses []string `json:"statuses"` ThirdTaskID string `json:"third_task_id"` Type string `json:"type"` UpdatedTime string `json:"updated_time"` UserID string `json:"user_id"` }
offlineTask
type PikPak ¶
func (*PikPak) DeleteOfflineTasks ¶ added in v3.36.0
func (*PikPak) GetAddition ¶
func (d *PikPak) GetAddition() driver.Additional
func (*PikPak) OfflineDownload ¶ added in v3.36.0
func (d *PikPak) OfflineDownload(ctx context.Context, fileUrl string, parentDir model.Obj, fileName string) (*OfflineTask, error)
离线下载文件
func (*PikPak) OfflineList ¶ added in v3.36.0
func (d *PikPak) OfflineList(ctx context.Context, nextPageToken string, phase []string) ([]OfflineTask, error)
获取离线下载任务列表 phase 可能的取值: PHASE_TYPE_RUNNING, PHASE_TYPE_ERROR, PHASE_TYPE_COMPLETE, PHASE_TYPE_PENDING
func (*PikPak) Put ¶
func (d *PikPak) Put(ctx context.Context, dstDir model.Obj, stream model.FileStreamer, up driver.UpdateProgress) error
func (*PikPak) RefreshCaptchaTokenAtLogin ¶ added in v3.36.0
RefreshCaptchaTokenAtLogin 刷新验证码token(登录后)
func (*PikPak) RefreshCaptchaTokenInLogin ¶ added in v3.36.0
RefreshCaptchaTokenInLogin 刷新验证码token(登录时)
type ReferenceResource ¶ added in v3.36.0
type ReferenceResource struct { Type string `json:"@type"` Audit interface{} `json:"audit"` Hash string `json:"hash"` IconLink string `json:"icon_link"` ID string `json:"id"` Kind string `json:"kind"` Medias []Media `json:"medias"` MIMEType string `json:"mime_type"` Name string `json:"name"` Params map[string]interface{} `json:"params"` ParentID string `json:"parent_id"` Phase string `json:"phase"` Size string `json:"size"` Space string `json:"space"` Starred bool `json:"starred"` Tags []string `json:"tags"` ThumbnailLink string `json:"thumbnail_link"` }
type UploadTaskData ¶ added in v3.22.0
type UploadTaskData struct { UploadType string `json:"upload_type"` //UPLOAD_TYPE_RESUMABLE Resumable *struct { Kind string `json:"kind"` Params struct { AccessKeyID string `json:"access_key_id"` AccessKeySecret string `json:"access_key_secret"` Bucket string `json:"bucket"` Endpoint string `json:"endpoint"` Expiration time.Time `json:"expiration"` Key string `json:"key"` SecurityToken string `json:"security_token"` } `json:"params"` Provider string `json:"provider"` } `json:"resumable"` File File `json:"file"` }
Click to show internal directories.
Click to hide internal directories.