如何从json有效负载中获取一个iframe在pug中呈现?

时间:2018-04-04 02:38:05

标签: node.js express iframe pug

问题是我的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。

pic of output in browser

1 个答案:

答案 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});
});