问题是我的iframe呈现为文本而不是iframe。这是他的有效载荷
var payload = {
'iat': now,
'nbf': now,
'exp': now + 86400, //one day from now.
'dashboard': 224277,
'organization': 19190,
'env': {"MYVAR": 42}
};
var token = jwt.encode(payload, ORGANIZATION_SECRET, 'HS256');
var src = 'iframe#dash.embedf(src=\'' + BASE_URL + '/' + token + '\')';
console.log(src);
res.render("pages/sponsorship", {frame: src});
});
这是帕格模板,赞助。
#container
.row
#chart-container
include ../../partials/footer
script
| var src = !{JSON.stringify(frame)}
| document.getElementById('chart-container').innerHTML = (src);
浏览器中的输出是原始文本,而不是重新发送iframe。
答案 0 :(得分:0)
您要求浏览器编译pug代码,但它并没有这样做。而是将src
变量更改为使用标准html:
var payload = {
'iat': now,
'nbf': now,
'exp': now + 86400, //one day from now.
'dashboard': 224277,
'organization': 19190,
'env': {"MYVAR": 42}
};
var token = jwt.encode(payload, ORGANIZATION_SECRET, 'HS256');
var src = '<iframe id="dash" class="embedf" src="' + BASE_URL + '/' + token + '"></iframe>';
console.log(src);
res.render("pages/sponsorship", {frame: src});
});