- 微信支付进件,身份证正面识别失败,请上传更清晰的身份证图片?
身份证正面识别失败,请上传更清晰的身份证图片,不管多清晰的照片都显示这个问题
2021-01-10 - golang 图片上传 签名失败
加密字符串:WECHATPAY2-SHA256-RSA2048 mchid="1605298545",nonce_str="51d6cf6a3a40073c185d045f9965ed99",signature="J96edK6pKk4qyukCKbPFHvBOt9XehHuJQfbZg/qrjuCy9fKfu4+BR+jupzIb08QIds9+u1pSeXC9uB3B9iRBI/buTM131P02Nuu3+DVtUtp8PQrgh6pPPUYbn5Gw2vAdpg/5jt/XAUt9+B3WeSG8pdb70P1qA21L2Qq7JP2/8urUtagQiFkcLYdhF5fYpTbKgugOKpdsDcIsiR9dWdud01GCZ9S9n9TqQSUH1PSpRZoZHuleOJlBdgn1+MO05RW7aoRczNVEKNxpuogwtKu3zVWHbB0OsLwZRiuicyOxeF34oU5ybcp1omQIHfaJgIAe/jsempUhrFveUDRFV1RNlA==",timestamp="1609915926",serial_no="56320EBFF57E06D8F2F613571C736252165FC00C" meta 信息 filename:c6gnocc1pdtcdkcjh7.jpg sha256 :eb7ad44f7ba1de7f282520b624fe3c10ed31af67 文件摘要 文件加密函数 func EncryptFile(path string) (encrypt string, err error) { f, err := os.Open(path) if err != nil { return "", err } defer f.Close() h := sha1.New() _, err = io.Copy(h, f) if err != nil { return "", err } return hex.EncodeToString(h.Sum(nil)), nil } 请求方法 r, e := ghttp.NewClient().Header(g.MapStrStr{ "Content-Type": "application/json", "Accept": "application/json", "Authorization": authorization, }).Post( core.BuildUrl(nil, nil, core.ApiMediaUpload), "upload-file=@file:"+req.File,req) if e != nil { return nil,e } else { glog.Infof("res:%s",r.ReadAllString()) r.Close() } 返回数据 {"code":"SIGN_ERROR","detail":{"detail":{"issue":"sign not match"},"field":"signature","location":"authorization","sign_information":{"method":"POST","sign_message_length":76,"truncated_sign_message":"POST\n/v3/merchant/media/upload\n1609915926\n51d6cf6a3a40073c185d045f9965ed99\n\n","url":"/v3/merchant/media/upload"}},"message":"错误的签名,验签失败"}
2021-01-06