asp模拟post自动提交表单
用ASP在做一个在线支付模块,使用的是中国银联的在线支付平台。因为中国银联接口只接受Post的数据,而我这边为了安全,不想把那些敏感数据放到HTML的Form中,而是想放...
用ASP在做一个在线支付模块,使用的是中国银联的在线支付平台。因为中国银联接口只接受Post的数据,而我这边为了安全,不想把那些敏感数据放到HTML的Form中,而是想放到ASP的服务器端,由ASP脚本来模拟form表单来把数据(包括商户ID、订单号、订单金额、交易日期、还有比较敏感的MD5密钥等)post到银联在线支付接口上。
查了下XMLHTTP方法,这个方法貌似不能转到接口的支付网站上,只能停留在本站,而且还要取得post后返回的HTML代码,一般用在采集上。能不能有像C++那样可以模拟表单提供的方法?
就是用ASP代码来进行类似于下面的这种操作:
<body onload="frmorder.submit();">
<form action="https://payment.chinapay.com/pay/TransGet" METHOD="post">
<input type="hidden" name="MerId" value="1234545">
<input type="hidden" name="OrdId" value="1234545">
</form>
</body>
要在脚本中实现,在HTML源文件中看不到任何表单内容,谁帮我把这个问题给实现了,100分送上。我现在别的没有,知道积分有的是,只要这个问题给我解决的漂亮,多要点百度积分都是小问题。
为防止问题无人回答造成积分浪费,我只先放50分。
二三楼的只会复制代码,连个提问内容都不仔细看。
没一个满意的怎么办?我不用这方法了,谁想要这70分的给我留言,要不就让百度给黑去了 展开
查了下XMLHTTP方法,这个方法貌似不能转到接口的支付网站上,只能停留在本站,而且还要取得post后返回的HTML代码,一般用在采集上。能不能有像C++那样可以模拟表单提供的方法?
就是用ASP代码来进行类似于下面的这种操作:
<body onload="frmorder.submit();">
<form action="https://payment.chinapay.com/pay/TransGet" METHOD="post">
<input type="hidden" name="MerId" value="1234545">
<input type="hidden" name="OrdId" value="1234545">
</form>
</body>
要在脚本中实现,在HTML源文件中看不到任何表单内容,谁帮我把这个问题给实现了,100分送上。我现在别的没有,知道积分有的是,只要这个问题给我解决的漂亮,多要点百度积分都是小问题。
为防止问题无人回答造成积分浪费,我只先放50分。
二三楼的只会复制代码,连个提问内容都不仔细看。
没一个满意的怎么办?我不用这方法了,谁想要这70分的给我留言,要不就让百度给黑去了 展开
6个回答
展开全部
<body> 这里onload不要了
<form name="sform" action="https://payment.chinapay.com/pay/TransGet" METHOD="post">
这里form 加个name
<input type="hidden" name="MerId" value="1234545">
<input type="hidden" name="OrdId" value="1234545">
</form>
<script>
document.sform.submit(); //提交表单
</script>
</body>
body的onload是页面加载的时候执行,那个时候form还没加载,js找不到form对象
<form name="sform" action="https://payment.chinapay.com/pay/TransGet" METHOD="post">
这里form 加个name
<input type="hidden" name="MerId" value="1234545">
<input type="hidden" name="OrdId" value="1234545">
</form>
<script>
document.sform.submit(); //提交表单
</script>
</body>
body的onload是页面加载的时候执行,那个时候form还没加载,js找不到form对象
追问
我上面的那段HTML代码已经实现页面载入后自动提交表单了,但是这是在HTML里面,我想要用ASP代码来实现,在HTML中看不到任何相关的代码。
你这样写的和我的那个没什么差别,在页面上查看源代码,数据暴露无遗
追答
嘿嘿,没看问题
你可以试试用ajax
展开全部
<body onload="frmorder.submit();">
<form id="aaa" action="https://payment.chinapay.com/pay/TransGet" METHOD="post">
<input type="hidden" name="MerId" value="1234545">
<input type="hidden" name="OrdId" value="1234545">
</form>
<script>
document.getElementById('aaa').submit();
</script>
</body>
<form id="aaa" action="https://payment.chinapay.com/pay/TransGet" METHOD="post">
<input type="hidden" name="MerId" value="1234545">
<input type="hidden" name="OrdId" value="1234545">
</form>
<script>
document.getElementById('aaa').submit();
</script>
</body>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<%
function postHTTPPage(appcode,data)
set http = Server.CreateObject("Msxml2.ServerXMLHTTP.3.0")
http.Open "POST",url,False
http.setRequestHeader "body", data
http.setRequestHeader "Content-Type","application/x-www-form-urlencoded;charset=utf-8"
http.Send(a_body)
postHTTPPage=http.responseText
set http=nothing
response.write postHTTPPage
end function
%>
用xmlhttp,模拟表单提交,用http.setRequestHeader修改一下头文件
function postHTTPPage(appcode,data)
set http = Server.CreateObject("Msxml2.ServerXMLHTTP.3.0")
http.Open "POST",url,False
http.setRequestHeader "body", data
http.setRequestHeader "Content-Type","application/x-www-form-urlencoded;charset=utf-8"
http.Send(a_body)
postHTTPPage=http.responseText
set http=nothing
response.write postHTTPPage
end function
%>
用xmlhttp,模拟表单提交,用http.setRequestHeader修改一下头文件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用js脚本创建表单,查看源文件应该看不到表单吧?
追问
js是可以被下载下来的,算了,估计用ASP是不可能实现这功能了,没一个满意的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
银行应该都有专用接口和代码给你使用的吧?还有支付宝之类的也有,给你一串代码和链接,你只要把银行的代码插入你的网页中就可以了啊,何必自己去考虑呢。这些代码也不会包含密码之类的。你是收款又不是付款。
更多追问追答
追问
无论是收款还是付款都需要做到最安全,为用户负责,也是为自己负责!
给的说明里是用的是HTML的表单
追答
银行专用接口,也就是一串代码,插入你的网页付款的地方,顾客点击之后,会根据你网页上的信息,生成一个订单号,传递到银行的付款界面,这个付款界面与你的网站无关,是银行的,在付款成功后,银行网站会返回一个已付款的信息到你的网站。这样说应该比较清楚了吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询