Javascript 如何发布';代币';响应对象从服务器获取Tableau视图
我正在通过Ajax调用发布一些数据,并在获得响应对象后获得“TOKEN”,反过来,我应该发布到另一个URL,以获得Javascript 如何发布';代币';响应对象从服务器获取Tableau视图,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在通过Ajax调用发布一些数据,并在获得响应对象后获得“TOKEN”,反过来,我应该发布到另一个URL,以获得中的Tableau视图。下面是我的代码和错误: 代码: <!DOCTYPE html> <html> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta name="viewport" content="width=device-width, in
中的Tableau视图。下面是我的代码和错误:
代码:
<!DOCTYPE html>
<html>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title>Tableau Template</title>
<head>
<meta charset="ISO-8859-1">
<title>Tableau Template</title>
<!-- Vendor Script -->
<!-- Commmon Script -->
<script>
function getTicket() {
try {
alert("Get Ticket");
var tableauInfo = {
username: "10162492",
site_root: "POC1",
// client_ip:"66.145.223.55"
}
//$('#getTicket').html('sending..');
var dashboardResourceURL = "https://analytics.xxxxxxxxxxxx/trusted/##TOKEN##/t/POC1/views/ExampleVis/Dashboard1?:iid=1"
var resourceURL = "https://xxxxxxxxxx/ticket1.php"
$.ajax({
method: 'POST',
url: resourceURL,
// data: JSON.stringify(tableauInfo),
dataType: 'json',
contentType: 'text/html',
headers: {
"Access-Control-Allow-Origin": "http://localhost:8080",
"Access-Control-Allow-Methods": "GET, PUT, POST, DELETE, OPTIONS",
"Access-Control-Allow-Headers": "Content-Type, Content-Range, Content-Disposition, Content-Description"
},
crossDomain: true,
})
.success(function(result) {
console.log(result);
alert(Json.stringify(result));
dashboardResourceURL.replace("##TOKEN##", result);
alert(dashboardResourceURL);
$('#tokenurl').show();
$('#tokenurl').src = dashboardResourceURL;
$('#getTicket').html(data.msg);
return result;
})
.fail(function(data) {
console.log('failed!! ', data);
$('#getTicket').html("Error retrieving ticket from Tableau server");
});
} catch (err) {
console.log('an unforseen error occurred; it is ', err);
}
}
</script>
</head>
<body>
<div>
<div>
<h3>Tableau Ticket</h3>
<br />
<div>
<button type="submit" onclick="getTicket();">Get Tableau
Ticket</button>
</div>
<br /> <br />
<div id="getTicket"></div>
</div>
<iframe id="tokenurl" src="" style="display: none;"> </iframe>
</div>
</body>
</html>
表格模板
表格模板
函数getTicket(){
试一试{
警报(“获取票证”);
变量tableauInfo={
用户名:“10162492”,
站点_根:“POC1”,
//客户ip:“66.145.223.55”
}
//$('#getTicket').html('sending..');
var dashboardResourceURL=”https://analytics.xxxxxxxxxxxx/trusted/##TOKEN##/t/POC1/views/ExampleVis/Dashboard1?:iid=1"
var resourceURL=”https://xxxxxxxxxx/ticket1.php"
$.ajax({
方法:“POST”,
url:resourceURL,
//数据:JSON.stringify(tableauInfo),
数据类型:“json”,
contentType:'text/html',
标题:{
“访问控制允许源”:http://localhost:8080",
“访问控制允许方法”:“获取、放置、发布、删除、选项”,
“访问控制允许标头”:“内容类型、内容范围、内容处置、内容描述”
},
跨域:是的,
})
.成功(功能(结果){
控制台日志(结果);
警报(Json.stringify(result));
dashboardResourceURL.replace(“##令牌###”,结果);
警报(仪表板资源URL);
$('#tokenurl').show();
$('#tokenurl').src=仪表板资源URL;
$('#getTicket').html(data.msg);
返回结果;
})
.失败(功能(数据){
console.log('failed!!',data);
$('#getTicket').html(“从Tableau服务器检索票证时出错”);
});
}捕捉(错误){
log('发生了一个不可预见的错误;它是',err);
}
}
表票
获得画面
票
错误:失败!!对象{readyState=4,responseText=“ARCIMBGAn1wNxxu3932mJ8GW”,状态=200,更多…}
请告诉我这里缺少的内容。您应该发布完整的错误声明请在
控制台中添加所有内容。日志(数据)
问题已解决。。。