在另一个 angularjs 应用程序中嵌入 angularjs 应用程序
Embed angularjs app in another angularjs app
我正在尝试将grafana嵌入到我的angularjs应用程序中。我可以使用简单的 iframe 轻松完成,但我的应用程序使用 jwt 进行身份验证,我找不到为 iframe 设置标头的方法。我已经确认,当我使用基本 iframe 关闭身份验证时,它工作得很好,但我需要启用它才能在生产中使用。
我也尝试使用$http
来获取 grafana html(这样我就可以设置我的 jwt 标头),但 js 似乎无法使用这种方法。我认为这与引导有关,因为它们是手动引导的。
//iframe
<iframe id="grafana" layout-fill flex></iframe>
//controller
$http.get('/grafana/dashboard').then(function(response) {
var iframeDocument = document.getElementById('grafana').contentWindow.document
iframeDocument.open('text/html', 'replace')
iframeDocument.write(response.data)
iframeDocument.close()
})
还有其他方法可以在 iframe 上设置标题吗?我也尝试仅使用 grafana 的 html 作为模板,但正如我之前所说,他们的引导似乎在另一个应用程序中不起作用。
你可以这样尝试,它应该可以工作:
$.ajax({
type: "GET",
url: "/grafana/dashboard",
contentType: "application/json",
beforeSend: function(xhr, settings){
xhr.setRequestHeader("some_custom_header", "foo");},
success: function(data){
$("#output_iframe_id").attr('src',"data:text/html;charset=utf-8," + escape(data))
}
});
相关文章:
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- 我想在AngularJS应用程序中创建一个输入数字框,用户不应该在该框上键入十进制数字.(一个整数输入框)
- 如何在AngularJS应用程序的主体上动态设置溢出
- 如何使用Node.js/MongoDB在AngularJS应用程序中获取特定于目标的数据
- 仅客户端AngularJS应用程序
- 如何使用onDeviceReady设置AngularJS应用程序并初始化Cordova的功能
- 如何在angularjs应用程序中解析Drupal JSON数据
- 一个页面中有多个AngularJS应用程序
- Angularjs应用程序的多个实例
- 在AngularJS应用程序中加载JSON(加载谷歌电子表格)
- 如何将路径更改广播到 AngularJS 应用程序中的所有视图
- AngularJS应用程序中的CORS错误
- AngularJS应用程序:如何将.js文件包含到index.html中
- 无法模块化AngularJS应用程序
- 如何在angularjs应用程序中注销后,通过浏览器后退按钮禁止用户访问上一页
- 如何在Eclipse中运行和调试AngularJS应用程序
- 带有RequireJS的AngularJS应用程序在Safari和Firefox中给出了“使用严格”错误
- 动态加载AngularJS应用程序
- 是否可以将我网站上的普通javascript和css函数包含到我的angularjs应用程序中
- 使用AngularJS应用程序为移动设备(iOS、Android等)构建本地应用程序的最佳方式