后台:
string OrderId = "1035"; //订单号
string tranDate = "20100709"; //交易日期
string ShopCode = "1502EC23373xx4"; //商家号码
string ShopAccount = "1502200119300127xx3";//商城账号
string interfaceName = "EAPI"; //接口名称
string interfaceVersion = "001.001.002.001"; //接口版本
string MerReqData = "MerReqData";
string crtPath = @"D:\user.crt";//拆分pfx后缀的证书后的公钥路径
string keypath = @"D:\user.key";//拆分pfx后缀的证书后的私鈅路径
string pubcrtpath = @"D:\ebb2cpublic.crt";//银行测试证书路径
string merSignMsg = "";
string merCert = "";
string merPwd = "12345678";//商户密码
ICBCEBANKUTILLib.B2CUtilClass icbc = new B2CUtilClass();
StringBuilder ICBCtranData = new StringBuilder();
string curType = "001"; //币种
string notifyType = "HS"; //通知接口类型
string orderpay = "0.01";
double pay = Convert.ToDouble(orderpay) * 100;
string orderDate = DateTime.Now.ToString("yyyyMMddHHmmss");
string sn = "1035";
string verifyJoinFlag = "0";
string resultType = "1";
string merURL = "xxxx.aspx";//返回链接
ICBCtranData.Append(interfaceName);
ICBCtranData.Append(interfaceVersion);
ICBCtranData.Append(ShopCode);
ICBCtranData.Append(ShopAccount);
ICBCtranData.Append(merURL);
ICBCtranData.Append(notifyType);
ICBCtranData.Append(sn);
ICBCtranData.Append(pay);
ICBCtranData.Append(curType);
ICBCtranData.Append(resultType);
ICBCtranData.Append(orderDate);
ICBCtranData.Append(verifyJoinFlag);
if (icbc.init(pubcrtpath, crtPath, keypath, merPwd) == 0)
{
merSignMsg = icbc.signC(ICBCtranData.ToString(), ICBCtranData.ToString().Length);
merCert = icbc.getCert(1);
}
else
{
HttpContext.Current.Response.Write(icbc.getRC());
}
StringBuilder sbData = new StringBuilder();
sbData.AppendLine("<?xml version='1.0' encoding='GBK' standalone='no' ?><ICBCAPI>");
sbData.AppendLine("<in>");
sbData.AppendLine("<orderNum>" + OrderId + "</orderNum>");
sbData.AppendLine("<tranDate>" + tranDate + "</tranDate>");
sbData.AppendLine("<ShopCode>" + ShopCode + "</ShopCode>");
sbData.AppendLine("<ShopAccount>" + ShopAccount + "</ShopAccount>");
sbData.AppendLine("</in>");
sbData.AppendLine("</ICBCAPI>");
perData = sbData.ToString();
前台:
<form id="form1" method ="post" action="https://mybank.icbc.com.cn/servlet/ICBCINBSEBusinessServlet"
<input name="APIName" type="hidden" value="EAPI" />
<input name="APIVersion" type="hidden" value="001.001.002.001" />
<input type=hidden name="MerReqData" value="<%=perData%>">
<input type="submit" value="工商银行进行查询" />
</form>
我在前台表单提交后 返回: 商户提交表单接口名称错误
但是在文档里 有招不到这个错误具体说明
后来我不用form表单形式,用HttpWebRequest来传输 结果报错 此流不支持查询操作
没办法了 只能问问大侠 这个商户提交表单接口名称错误到底该怎么解决??
文档里说要用API和数字证书对数据进行签名 这个我始终不知道, 谁弄过教教我
它这个接口有文档的,你耐心看看。
前些天和人同搞工行的支付接口,遇到点问题,商品名中如果有中文就出错,可能是编码原因。
?结果呢,怎么没了
我就是想知道 这个接口类库是工商提供还是自己下载的!
查询接口的url 不对吧!
我想问下 工商支付成功回调接口解密失败 unknow block type 什么原因啊?