Ionic 2:加载应用程序内部的外部内容

时间:2017-02-04 04:24:24

标签: html json ionic-framework external

我是Ionic的新手。我的打字稿文件是这样的:

<?php 
    $user_details = $db->select("SELECT * FROM 'as_user_details' where id = '$user_id' ");
    echo $user_details['payout']; 
?>

任何网址,即使在相同的来源中,也会导致如下错误:
import { Component } from '@angular/core'; import { Http } from '@angular/http'; import { NavController } from 'ionic-angular'; @Component({ selector: 'page-about', templateUrl: 'about.html' }) export class AboutPage { mypage: any; constructor(public navCtrl: NavController, public http: Http) { this.http .get('http://localhost/xampp/') .map(response => response.text()) .subscribe(html => this.mypage = html); } } 错误出现在我的电脑或手机中的离子电源上。我该怎么做才能解决? 我想把它作为组件加载“templateUrl:'somehtml'”,但是将来我想在我的应用程序中加载一些json数据。谢谢。

1 个答案:

答案 0 :(得分:1)

我自己解决了这个问题。这是一个CORS问题,但我发现在Ionic 2上几乎没有关于它的信息。 答案在于var resetHeight = function(){ var loginForm = document.querySelector('.login-form'); var windowHeight = window.innerHeight; var topNavbarHeight = document.querySelector('.top-navbar').clientHeight; var loginFormHeight = loginForm.clientHeight; var footerHeight = document.querySelector('footer').clientHeight; var totalHeights = loginFormHeight + topNavbarHeight + footerHeight + 90; var halfHeight = (windowHeight-totalHeights) / 2; loginForm.style.paddingTop = halfHeight + "px"; loginForm.style.paddingBottom = halfHeight+ "px"; }; window.onload = resetHeight; window.onresize = resetHeight; 文件。你必须将这些行添加到json项:

ionic.config.json

现在出现了真正的问题。足够?不,当然。回到我的代码,我应该这样做:

"proxies": [
    {
        "path": "/virtualfolder",
        "proxyUrl": "http://www.externalsite.com"
    }
  ]

离子映射您指定路径中的外部资源。 在注意到之后,我不得不解决一些与此无关的问题,但它最终做了我想要的,我注意到反XSS策略有多棒。希望我会帮助别人。