$("#productSelect").change(function() {
// 联通在线定向流量集约平台-畅视
// system_id : 39
// sourcedevice_id:390001
// sourcedevice_name:联通在线定向流量集约平台
// client_id : n3acdDxpFQ1aDDE1FhKr
// client_secret : SaREX72YV46luwvLx1M3
//
// 联通在线定向流量集约平台-沃音乐
// system_id : 40
// sourcedevice_id:400001
// sourcedevice_name:联通在线定向流量集约平台
// client_id: kqpH3U4Y9QpRkORW6l9k
// client_secret : p0QUs7bhpjkmWnXSBWr2
//
// 联通在线定向流量集约平台-小沃科技
// system_id : 41
// sourcedevice_id:410001
// sourcedevice_name:联通在线定向流量集约平台
// client_id : Wjb0RKxO8OsCqr1UDTna
// client_secret : 'bVTdjATcc9HhyWR28J81
//
// 联通在线定向流量集约平台-沃悦读
// system_id : 42
// sourcedevice_id:420001
// sourcedevice_name:联通在线定向流量集约平台
// client_id : U1UcIFZAAeX1gV4VGPe2
// client_secret : siF6V1jCTWPZNyqYlb1G
// 联通在线定向流量集约平台-沃悦读
// system_id: ,
// "SOURCEDEVICE_ID":"650000"
const params = {
"SPID": $("#productSelect").find("option:selected").attr('spid'),
"PRODUCT_ID": $("#productSelect").find("option:selected").attr('prmproductid'),
"PRODUCT_NAME": $("#productSelect").find("option:selected").attr('productname'),
"PRODUCT_PRICE": $("#productSelect").find("option:selected").attr('productprice'),
"PRODUCT_TYPE": $("#productSelect").find("option:selected").attr('producttype')
};
$('#product').text(JSON.stringify(params))
})
$('#btn-order').unbind('click').on('click', function() {
$("#btn-order").attr('disabled', true);
$("body").css("overflow", "hidden");
let capUrl = $('#evnSelect').find("option:selected").attr('capurl');
// var $iframe = $('')
var $iframe = $('')
// var $iframe = $('')
var targetOrigin = "";
if (capUrl.indexOf("https://cap.chinaunicom.cn") >= 0) {
targetOrigin = "https://cap.chinaunicom.cn/";
} else if (capUrl.indexOf("http://cap.free.svipss.top") >= 0) {
targetOrigin = "http://cap.free.svipss.top/"
} else if (capUrl.indexOf("https://captain.chinaunicom.cn")) {
targetOrigin = "https://captain.chinaunicom.cn/"
}
var PRODUCT_NAME = $("#productSelect").find("option:selected").attr('productname');
var PRODUCT_PRICE = $("#productSelect").find("option:selected").attr('productprice');
var PRODUCT_ID = $("#productSelect").find("option:selected").attr('prmproductid');
var PRODUCT_TYPE = $("#productSelect").find("option:selected").attr('producttype');
var SPID = $("#productSelect").find("option:selected").attr('spid');
var params = {
"PRODUCT_NAME": PRODUCT_NAME,
"PRODUCT_PRICE": PRODUCT_PRICE,
"CLIENT_ID": "",
"CLIENT": "3",
"SERVICE_ID": "",
"AUTH_NO": "",
"CLIENT_SECRET": "",
"VERSION": "1.0",
"SERVICE_PHONE": "",
"THEME": "",
"PRODUCT_ID": PRODUCT_ID,
"PRODUCT_TYPE": PRODUCT_TYPE
}
$iframe.on('load', function() {
$.ajax({
//请求后项定向服务获取
url: getRootPath() + "-s1api" + "/ini/clientsecret?spid=" + SPID,
dataType: "JSON",
method: "GET",
success: function(data) {
params.CLIENT_ID = data.client_id;
params.AUTH_NO = data.auth_no;
params.CLIENT_SECRET = data.client_secret;
console.log(params)
$('#uniauthframe')[0].contentWindow.postMessage(
JSON.stringify(params), targetOrigin)
}
})
})
$('body').append($iframe);
//监听统一认证结果
window.addEventListener('message', function(e) {
let data = JSON.parse(e.data);
$('#token').text(e.data)
switch (data.RSP.RSP_CODE) {
case "0000": //处理成功
$('iframe').remove();
break;
case "0001": //auth_no无效 (入参流水)
alert("认证失败!");
break;
case "0003": //client_id不存在 (注册id存在问题)
alert("认证失败!");
break;
case "4444": //服务暂时不可用(系统忙/系统队列满)
alert("服务暂时不可用!");
break;
case "9001": //关闭H5认证页面
$('iframe').remove();
break;
}
}, false);
})
/*
获取root
*/
function getRootPath() {
//获取当前网址,如: http://localhost:8080/ems/Pages/Basic/Person.jsp
var curWwwPath = window.document.location.href;
//获取主机地址之后的目录,如: /ems/Pages/Basic/Person.jsp
var pathName = window.document.location.pathname;
var pos = curWwwPath.indexOf(pathName);
//获取主机地址,如: http://localhost:8080
var localhostPath = curWwwPath.substring(0, pos);
//获取带"/"的项目名,如:/ems
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
root = (localhostPath + projectName);
return (localhostPath + projectName);
}