首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >腾讯点播视频删除鉴权错误,报4100?

腾讯点播视频删除鉴权错误,报4100?

提问于 2018-08-24 16:29:29
回答 1关注 0查看 890

golang:

代码语言:js
复制
	nowTime := time.Now().Unix()
	r := rand.New(rand.NewSource(time.Now().UnixNano()))
	random := r.Int()

	action := "DeleteVodFile"
	nonce := strconv.Itoa(random)
	region := "ap-guangzhou"
	secretId := "AKIDJct33uY5RcgdT8g3IPQK3iN0Y1Oh3vqq"
	signatureMethod := "HmacSHA1"
	timestamp := strconv.Itoa(int(nowTime))
	fileId := "5285890781379611159"
	priority := "0"

	// 加密前 手动按字典排序
	dataFoo := "GETvod.api.qcloud.com/v2/index.php?"
	dataFoo += "Action=" + action
	dataFoo += "&Nonce=" + nonce
	dataFoo += "&Region=" + priority
	dataFoo += "&SecretId=" + secretId
	dataFoo += "&SignatureMethod=" + signatureMethod
	dataFoo += "&Timestamp=" + timestamp
	dataFoo += "&fileId=" + fileId
	dataFoo += "&priority=" + priority

	signature := this.signature(dataFoo)
	signatureUrl := url.QueryEscape(signature)

	fmt.Println("Signature:", signature)
	fmt.Println("SignatureUrl:", signatureUrl)

	// 实际申请的数据顺序无关
	dataBar := "https://vod.api.qcloud.com/v2/index.php?"
	dataBar += "Action=" + url.QueryEscape(action)
	dataBar += "&fileId=" + url.QueryEscape(fileId)
	dataBar += "&Nonce=" + url.QueryEscape(nonce)
	dataBar += "&priority=" + url.QueryEscape(priority)
	dataBar += "&Region=" + url.QueryEscape(region)
	dataBar += "&SecretId=" + url.QueryEscape(secretId)
	dataBar += "&SignatureMethod=" + url.QueryEscape(signatureMethod)
	dataBar += "&Timestamp=" + url.QueryEscape(timestamp)
	dataBar += "&Signature=" + signatureUrl

	req, err := http.NewRequest("GET", dataBar, nil)
	//	req, err := http.NewRequest("POST", "https://vod.api.qcloud.com/v2/index.php?Action=DeleteVodFile", buf)
	if err != nil {
		fmt.Println("NewRequest失败:", err.Error())
		return
	}

	client := &http.Client{}
	resp, err := client.Do(req)
	if err != nil {
		fmt.Println("client.Do失败:", err.Error())
		return
	}
	stdout := os.Stdout
	io.Copy(stdout, resp.Body)
	defer resp.Body.Close()	

输出结果

Signature: LcHi5uPUJb4Z+6IuM6jDPdeLeQBHRVR2b2QuYXBpLnFjbG91ZC5jb20vdjIvaW5kZXgucGhwP0FjdGlvbj1EZWxldGVWb2RGaWxlJk5vbmNlPTcxNTkzOTg2NTQ2MzEwNzYxMTAmUmVnaW9uPTAmU2VjcmV0SWQ9QUtJREpjdDMzdVk1UmNnZFQ4ZzNJUFFLM2lOMFkxT2gzdnFxJlNpZ25hdHVyZU1ldGhvZD1IbWFjU0hBMSZUaW1lc3RhbXA9MTUzNTA5OTE4OSZmaWxlSWQ9NTI4NTg5MDc4MTM3OTYxMTE1OSZwcmlvcml0eT0w

SignatureUrl: LcHi5uPUJb4Z%2B6IuM6jDPdeLeQBHRVR2b2QuYXBpLnFjbG91ZC5jb20vdjIvaW5kZXgucGhwP0FjdGlvbj1EZWxldGVWb2RGaWxlJk5vbmNlPTcxNTkzOTg2NTQ2MzEwNzYxMTAmUmVnaW9uPTAmU2VjcmV0SWQ9QUtJREpjdDMzdVk1UmNnZFQ4ZzNJUFFLM2lOMFkxT2gzdnFxJlNpZ25hdHVyZU1ldGhvZD1IbWFjU0hBMSZUaW1lc3RhbXA9MTUzNTA5OTE4OSZmaWxlSWQ9NTI4NTg5MDc4MTM3OTYxMTE1OSZwcmlvcml0eT0w

最终的拼装Url: https://vod.api.qcloud.com/v2/index.php?Action=DeleteVodFile&fileId=5285890781379611159&Nonce=7159398654631076110&priority=0&Region=ap-guangzhou&SecretId=AKIDJct33uY5RcgdT8g3IPQK3iN0Y1Oh3vqq&SignatureMethod=HmacSHA1&Timestamp=1535099189&Signature=LcHi5uPUJb4Z%2B6IuM6jDPdeLeQBHRVR2b2QuYXBpLnFjbG91ZC5jb20vdjIvaW5kZXgucGhwP0FjdGlvbj1EZWxldGVWb2RGaWxlJk5vbmNlPTcxNTkzOTg2NTQ2MzEwNzYxMTAmUmVnaW9uPTAmU2VjcmV0SWQ9QUtJREpjdDMzdVk1UmNnZFQ4ZzNJUFFLM2lOMFkxT2gzdnFxJlNpZ25hdHVyZU1ldGhvZD1IbWFjU0hBMSZUaW1lc3RhbXA9MTUzNTA5OTE4OSZmaWxlSWQ9NTI4NTg5MDc4MTM3OTYxMTE1OSZwcmlvcml0eT0w

{"code":4100,"message":"\u8eab\u4efd\u8ba4\u8bc1\u5931\u8d25\uff0c\u7528\u6237\u8eab\u4efd\u9a8c\u8bc1\u5931\u8d25","codeDesc":"AuthFailure"}

应该怎么写才能通过?

回答

和开发者交流更多问题细节吧,去 写回答
相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档