在网上支付成功后,银联会返回一个参数来判断是否交易成功,说明书上写的是交易完后chinapay通过http post方式重新定向商户一个URL,有asp的事例
<% dim merid,orderno,amount,currencycode,transdate,transtype,status,checkvalue
MerId = trim(request("merid"))
OrdId = trim(request("orderno"))
TransAmt = trim(request("amount"))
CuryId = trim(request("currencycode"))
TransDate = trim(request("transdate"))
TransType = trim(request("transtype"))
OrderStatus = trim(request("status"))
CheckValue = trim(request("checkvalue"))
set ThisOrder=CreateObject("ChinaPay.NetPayClient")
ret=ThisOrder.check(MerId,OrdId,TransAmt,CuryId,TransDate,TransType,OrderStatus,CheckValue)
response.End()
if ret=0 then
...交易成功
%>
在asp.net里怎么接收 http post的值呢?
<% dim merid,orderno,amount,currencycode,transdate,transtype,status,checkvalue
MerId = trim(request("merid"))
OrdId = trim(request("orderno"))
TransAmt = trim(request("amount"))
CuryId = trim(request("currencycode"))
TransDate = trim(request("transdate"))
TransType = trim(request("transtype"))
OrderStatus = trim(request("status"))
CheckValue = trim(request("checkvalue"))
set ThisOrder=CreateObject("ChinaPay.NetPayClient")
ret=ThisOrder.check(MerId,OrdId,TransAmt,CuryId,TransDate,TransType,OrderStatus,CheckValue)
response.End()
if ret=0 then
...交易成功
%>
在asp.net里怎么接收 http post的值呢?
与, AIM, Paypal, Payflow, 可能差不多?
你做的是怎么接收 银行交易应答的?
v_pstatus = Request["v_pstatus"];
v_pstring = Request["v_pstring"];
v_pmode = Request["v_pmode"];
v_md5str = Request["v_md5str"];
v_amount = Request["v_amount"];
v_moneytype = Request["v_moneytype"];
re1 = Request["re1"];
re2 = Request["re2"];我用过。。
{
transDate = Request.Form["transdate"];
merID = Request.Form["merid"];
ordID = Request.QueryString["orderno"];
transType = Request.ServerVariables["transtype"];
transAmt = Request.Form["transamt"];
curyID = Request.Form["currencycode"];
orderStatus = Request.Form["status"];
chkValue = Request.Form["checkvalue"];
Response.Write(transDate + "<br>");
Response.Write(merID + "<br>");
Response.Write(transType + "<br>");
Response.Write(ordID + "<br>");
NetPayClient netPay = new NetPayClient();
string ret = netPay.check(merID, ordID, transAmt, curyID, transDate, transType, orderStatus, chkValue);
Response.Write(ret + "<br>");
}但是会出错 服务器出现意外情况。 (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT))
接收页面:http://test.hxgift.cn/accept.aspx
void unsetMerKeyFile()
void setPubKeyFile(char keyFile[256])
void unsetPubKeyFile()
int signOrder(char *MerId,OrderNo,char *TransAmt,char *CurrencyCode,char *TransDate,char *TransType,char *CheckValue)
int verifyTransResponse(char *MerId,char *OrdId,char *TransAmt,char *CuryId,char *TransDate,char *TransType,char *OrdStat,char *ChkValue)
int signData(char MerId[15], char SignData[2048], char ChkValue[256])
int verifySignData(char SignData[2049], char ChkValue[256])