smartwalle / alipay

支付宝 AliPay SDK for Go, 集成简单,功能完善,持续更新,支持公钥证书和普通公钥进行签名和验签,支持文件上传和接口内容加密。
MIT License
1.87k stars 425 forks source link

按照README里面文件上传的示例写,一直提示参数无效呀? #184

Closed ilaziness closed 11 months ago

ilaziness commented 11 months ago
    _, err = os.Open(file)
    if err != nil {
        return
    }
    _, err = os.Stat(file)
    if err != nil {
        return
    }
    p := thirdAlipay.NewPayload("alipay.open.file.upload")
    p.Encrypt = false
    p.AddParam("biz_code", "content_creation")
    p.AddFilePath("tp1", "1.PNG", file)
    //p.AddFileObject("tp1", "1.PNG", f)
    err = c.thirdAlipay.Request(p, &result)
    if err != nil {
        return nil, err

    }
    return result, nil

file是传的文件路径,用沙箱账号和个人账号都测试了结果都一样,返回的code和msg:

code: 40002 msg: Invalid Arguments

支付宝文档:https://opendocs.alipay.com/mini/03hvl1?scene=common&pathHash=580df4c9

ilaziness commented 11 months ago

是沙箱环境不支持这个接口吗?非沙箱环境是可以的。

是返回: "alipay_open_file_upload_response": { "code": "40002", "msg": "Invalid Arguments", "sub_code": "isv.upload-fail", "sub_msg": "文件上传失败" },

我看这个文档的沙箱说明https://opendocs.alipay.com/mini/06fpmr?pathHash=ddca1730,里面有写支持的,小程序搜索直达的功能我也绑定了。

smartwalle commented 11 months ago

tp1 是什么?有这个参数吗

ilaziness commented 11 months ago

@smartwalle 那只是个名字,字符串,我测了下,估计是支付宝沙盒环境的问题,不用沙盒环境没问题。 用沙盒环境就不行,支付宝那个在线调试的工具也是返回这个错误。 看文档这个接口支持沙盒的,不知道怎么又不行。