public class AcpService extends Object
| 构造器和说明 |
|---|
AcpService() |
| 限定符和类型 | 方法和说明 |
|---|---|
static String |
base64Decode(String base64Str,
String encoding)
对base64的字符串解base64
|
static String |
base64Encode(String rawStr,
String encoding)
对字符串做base64
|
static String |
createAutoFormHtml(String reqUrl,
Map<String,String> hiddens)
功能:前台交易构造HTTP POST自动提交表单
|
static String |
deCodeFileContent(Map<String,String> resData,
String fileDirectory,
String encoding)
功能:解析交易返回的fileContent字符串并落地 ( 解base64,解DEFLATE压缩并落地)
适用到的交易:对账文件下载,批量交易状态查询 |
static String |
decryptData(String base64EncryptedInfo,
String encoding)
敏感信息解密
|
static String |
enCodeFileContent(String filePath,
String encoding)
功能:将批量文件内容使用DEFLATE压缩算法压缩,Base64编码生成字符串并返回
适用到的交易:批量代付,批量代收,批量退货 |
static String |
encryptData(String data,
String encoding)
敏感信息加密并做base64(卡号,手机号,cvn2,有效期)
|
static String |
encryptPin(String accNo,
String pwd,
String encoding)
密码加密并做base64
|
static String |
encryptTrack(String trackData,
String encoding)
加密磁道信息,使用公钥文件
|
static String |
encryptTrack(String trackData,
String encoding,
String modulus,
String exponent)
加密磁道信息,使用模和指数
|
static String |
get(String reqUrl,
String encoding)
功能:http Get方法 便民缴费产品中使用
|
static String |
getCustomerInfo(Map<String,String> customerInfoMap,
String accNo,
String encoding)
持卡人信息域customerInfo构造
说明:不勾选对敏感信息加密权限使用旧的构造customerInfo域方式,不对敏感信息进行加密(对 phoneNo,cvn2, expired不加密),但如果送pin的话则加密 |
static String |
getCustomerInfoWithEncrypt(Map<String,String> customerInfoMap,
String accNo,
String encoding)
持卡人信息域customerInfo构造,勾选对敏感信息加密权限 适用新加密规范,对pin和phoneNo,cvn2,expired加密
适用到的交易: |
static String |
getEncryptCertId()
获取敏感信息加密证书的物理序列号
|
static String |
getFileContent(String fileContent,
String encoding)
将结果文件内容 转换成明文字符串:解base64,解压缩
适用到的交易:批量交易状态查询 |
static Map<String,String> |
parseCustomerInfo(String customerInfo,
String encoding)
解析返回报文(后台通知)中的customerInfo域:解base64,如果带敏感信息加密 encryptedInfo 则将其解密并将 encryptedInfo中的域放到customerInfoMap返回
|
static Map<String,String> |
post(Map<String,String> reqData,
String reqUrl,
String encoding)
功能:后台交易提交请求报文并接收同步应答报文
|
static Map<String,String> |
sign(Map<String,String> reqData)
请求报文签名(使用配置文件中配置的私钥证书加密)
功能:对请求报文进行签名,并计算赋值certid,signature字段并返回 |
static Map<String,String> |
sign(Map<String,String> reqData,
String certPath,
String certPwd,
String encoding)
多证书签名(通过传入私钥证书路径和密码加密)
功能:如果有多个商户号接入银联,每个商户号对应不同的证书可以使用此方法:传入私钥证书和密码(并且在acp_sdk.properties中 配置 acpsdk.singleMode=false) |
static boolean |
validate(Map<String,String> rspData,
String encoding)
验证签名(SHA-1摘要算法)
|
static boolean |
validateAppResponse(String jsonData,
String encoding)
对控件支付成功返回的结果信息中data域进行验签(控件端获取的应答信息)
|
public static Map<String,String> sign(Map<String,String> reqData)
reqData - 请求报文mapencoding - 上送请求报文域encoding字段的值public static Map<String,String> sign(Map<String,String> reqData, String certPath, String certPwd, String encoding)
reqData - 请求报文mapcertPath - 签名私钥文件(带路径)certPwd - 签名私钥密码encoding - 上送请求报文域encoding字段的值public static boolean validate(Map<String,String> rspData, String encoding)
resData - 返回报文数据encoding - 上送请求报文域encoding字段的值public static boolean validateAppResponse(String jsonData, String encoding)
jsonData - json格式数据,例如:{"sign" : "J6rPLClQ64szrdXCOtV1ccOMzUmpiOKllp9cseBuRqJ71pBKPPkZ1FallzW18gyP7CvKh1RxfNNJ66AyXNMFJi1OSOsteAAFjF5GZp0Xsfm3LeHaN3j/N7p86k3B1GrSPvSnSw1LqnYuIBmebBkC1OD0Qi7qaYUJosyA1E8Ld8oGRZT5RR2gLGBoiAVraDiz9sci5zwQcLtmfpT5KFk/eTy4+W9SsC0M/2sVj43R9ePENlEvF8UpmZBqakyg5FO8+JMBz3kZ4fwnutI5pWPdYIWdVrloBpOa+N4pzhVRKD4eWJ0CoiD+joMS7+C0aPIEymYFLBNYQCjM0KV7N726LA==", "data" : "pay_result=success&tn=201602141008032671528&cert_id=68759585097"}public static Map<String,String> post(Map<String,String> reqData, String reqUrl, String encoding)
reqData - 请求报文rspData - 应答报文reqUrl - 请求地址encoding
- public static String get(String reqUrl, String encoding)
reqUrl - encoding - public static String createAutoFormHtml(String reqUrl, Map<String,String> hiddens)
action - 表单提交地址hiddens - 以MAP形式存储的表单键值encoding - 上送请求报文域encoding字段的值public static String enCodeFileContent(String filePath, String encoding)
filePath - 批量文件-全路径文件名public static String deCodeFileContent(Map<String,String> resData, String fileDirectory, String encoding)
resData - 返回报文mapfileDirectory - 落地的文件目录(绝对路径)encoding - 上送请求报文域encoding字段的值public static String getFileContent(String fileContent, String encoding)
fileContent - 批量交易状态查询返回的文件内容public static String getCustomerInfo(Map<String,String> customerInfoMap, String accNo, String encoding)
customerInfoMap - 信息域请求参数 key送域名value送值,必送accNo - customerInfoMap送了密码那么卡号必送,如果customerInfoMap未送密码pin,此字段可以不送encoding - 上送请求报文域encoding字段的值public static String getCustomerInfoWithEncrypt(Map<String,String> customerInfoMap, String accNo, String encoding)
customerInfoMap - 信息域请求参数 key送域名value送值,必送 accNo - customerInfoMap送了密码那么卡号必送,如果customerInfoMap未送密码PIN,此字段可以不送encoding - 上送请求报文域encoding字段的值public static Map<String,String> parseCustomerInfo(String customerInfo, String encoding)
customerInfo - encoding - public static String encryptPin(String accNo, String pwd, String encoding)
accNo - 卡号pwd - 密码encoding
- public static String encryptData(String data, String encoding)
data - 送 phoneNo,cvn2,有效期encoding
- public static String decryptData(String base64EncryptedInfo, String encoding)
base64EncryptedInfo - encoding - public static String encryptTrack(String trackData, String encoding)
trackData - 待加密磁道数据encoding - 编码格式public static String encryptTrack(String trackData, String encoding, String modulus, String exponent)
trackData - 待加密磁道数据encoding - 编码格式modulus - 模exponent - 指数public static String getEncryptCertId()
public static String base64Encode(String rawStr, String encoding) throws IOException
rawStr - encoding - IOExceptionpublic static String base64Decode(String base64Str, String encoding) throws IOException
base64Str - encoding - IOExceptionCopyright © 2019. All rights reserved.