问题描述
如果我尝试为名称中带有“ +”字符的文件生成签名的cookie,则在应用程序中将看不到该文件。
我使用以下代码生成Cookie:
func GenerateCookie(ctx *gin.Context,userID string) error {
privKey,err := sign.LoadPEMPrivKeyFile(os.Getenv("AWS_KEY"))
if err != nil {
return err
}
cs := sign.NewCookieSigner(os.Getenv("AWS_KEY_CLOUDFRONT"),privKey)
expire := time.Now().UTC().Add(2 * time.Hour)
policy := &sign.Policy{
Statements: []sign.Statement{
{
Resource: os.Getenv("CLOUDFRONT_DOMAIN") + "/" + userID + "/*",Condition: sign.Condition{
DateLessThan: &sign.AWSEpochTime{Time: expire},},}
cookies,err := cs.SignWithPolicy(policy)
if err != nil {
return err
}
maxage := int(expire.Unix() - time.Now().Unix())
for _,c := range cookies {
ctx.SetCookie(c.Name,c.Value,maxage,"/",os.Getenv("DOMAIN"),util.GetIsSecureCookie(),true)
}
return err
}
我该如何解决?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)