沃支付以表单提交的打开方式
1、页面部分
- 表单模拟
ajax
提交
form
中的 method
为 请求方式
form
中的 action
为 请求目标地址
form
中的 target
为 目标地址窗口打开方式
form
中的 input
为 form表单的参数
<div>
<form ref="formPay" name="formPay" method="post" :action="fromDate.action" target="_blank">
<input type="hidden" name="interfaceVersion" v-model="fromDate.interfaceVersion">
<input type="hidden" name="tranType" v-model="fromDate.tranType">
<input type="hidden" name="merNo" v-model="fromDate.merNo">
<input type="hidden" name="orderDate" v-model="fromDate.orderDate">
<input type="hidden" name="orderNo" v-model="fromDate.orderNo">
<input type="hidden" name="amount" v-model="fromDate.amount">
<input type="hidden" name="goodId" v-model="fromDate.goodId">
<input type="hidden" name="charSet" v-model="fromDate.charSet">
<input type="hidden" name="tradeMode" v-model="fromDate.tradeMode">
<input type="hidden" name="reqTime" v-model="fromDate.reqTime">
<input type="hidden" name="respMode" v-model="fromDate.respMode">
<input type="hidden" name="callbackUrl" v-model="fromDate.callbackUrl">
<input type="hidden" name="serverCallUrl" v-model="fromDate.serverCallUrl">
<input type="hidden" name="signType" v-model="fromDate.signType">
<input type="hidden" name="goodsName" v-model="fromDate.goodsName">
<input type="hidden" name="signMsg" v-model="fromDate.signMsg">
<input type="hidden" name="expireTime" v-model="fromDate.expireTime">
<input type="hidden" name="merUserId" v-model="fromDate.merUserId">
<input type="hidden" name="goodsDesc" v-model="fromDate.goodsDesc">
<input type="hidden" name="disAmtDetl" v-model="fromDate.disAmtDetl">
<p> </p>
<input type="button" value="提交" @click="getLatAndLng();"/>
</form>
</div>
2、JS部分(基于vue)
fromDate = {
action: 'http://113.98.54.54:9527',
interfaceVersion: '',
tranType: '',
merNo: '',
orderDate: '',
orderNo: '',
amount: '',
goodId: '',
charSet: '',
tradeMode: '',
reqTime: '',
respMode: '',
callbackUrl: '',
serverCallUrl: '',
signType: '',
goodsName: '',
signMsg: '',
expireTime: '',
merUserId: '',
goodsDesc: '',
disAmtDetl: '',
}
function getLatAndLng() {
this.$refs.formPay.submit()
}
遇到的问题
联通沃支付页面成功回调页面失败
使用`nginx`拦截重定向
+ 平台网关代理
<!-- nginx.conf -->
server {
listen 8080; #监听
server_name 113.98.54.54; #监听服务器地址
location / {
proxy_pass http://172.27.10.14:8001;
}
#跳过网关的Authorization认证
location /g-foreigninterface {
proxy_pass http://172.27.10.15:8101/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
}
#TX项目代理
server {
listen 9527; #监听后重定向
server_name 113.98.54.54; #监听后重定向
location / {
return 301 http://202.168.1.57/#/zhnyjsc; 301 重定向 不需要跑代码 直接被nginx拦截
#proxy_pass http://172.27.10.14:8001;
}
}