Skip to content

企业付款的API,在windows上运行时,加密有些问题 #788

@constanine

Description

@constanine

在windows的cmd中运行,默认是GBK2312,这样加密出来会有问题
微信返回结果如下
<xml> <return_code><![CDATA[SUCCESS]]></return_code> <return_msg><![CDATA[参数错误,请检查参数]]></return_msg> <result_code><![CDATA[FAIL]]></result_code> <err_code><![CDATA[PARAM_ERROR]]></err_code> <err_code_des><![CDATA[用户真实姓名存在非UTF8字符]]></err_code_des> <nonce_str><![CDATA[1539222582130]]></nonce_str> <mch_id><![CDATA[1515170561]]></mch_id> <partner_trade_no><![CDATA[1539222572663]]></partner_trade_no> <amount>10</amount> </xml>
追查原因
com.github.binarywang.wxpay.service.impl.EntPayServiceImpl.encryptRSA(File, String)
代码中
byte[] encrypt = cipher.doFinal(srcString.getBytes());
改成
byte[] encrypt = cipher.doFinal(srcString.getBytes("UTF-8"));
是不是更合理些?
@binarywang

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions