angular2 问题请教

简介: angular2 通过http服务进行对后端api的远程调用? 我简单的尝试了一下,发现了几个问题,记录一下,以方便查找问题。 angular2 http服务的跨域问题?跨域本身就是一个很复杂的问题,angular2对跨域的处理。

angular2 通过http服务进行对后端api的远程调用?

我简单的尝试了一下,发现了几个问题,记录一下,以方便查找问题。

  1. angular2 http服务的跨域问题?跨域本身就是一个很复杂的问题,angular2对跨域的处理。
  2. angular2 如果在providers中加入http服务会出现什么问题?
  3. promise http服务会强迫我们使用Observerable,但是我们可以转换成promise,还是遵循官方指导,学习rxjs吧。

现在我们先看第二个问题?

 1 import { NgModule } from '@angular/core';
 2 import { Http, HttpModule } from '@angular/http';
 3 import { HeroListComponent } from './hero-list.component';
 4 
 5 @NgModule({
 6     imports: [HttpModule],
 7     declarations: [HeroListComponent],
 8     providers: [Http]
 9 })
10 
11 export class HeroListModule
12 { }

我在providers中添加了http服务。如果此时我通过http获取远程url内容。

 1 import { Component } from '@angular/core';
 2 import { Http } from '@angular/http';
 3 
 4 @Component({
 5     templateUrl: './hero-list.component.html'
 6 })
 7 
 8 export class HeroListComponent {
 9     private baiduhtml: string;
10     constructor(private http: Http) {
11         this.http.get("http://localhost:8080/dashboard/datalist").toPromise().then((data) => {
12             this.baiduhtml = data.text();
13         }).catch(this.handleError);
14     }
15 
16     private handleError(error: any): Promise<any> {
17         console.error('An error occurred', error); // for demo purposes only
18         return Promise.reject(error.message || error);
19     }
20 
21 }

 

很不好意思?出现了错误

如果我们去掉providers中的http,执行正常。

这是不是提示我们,服务不能重复的在providers中添加呢?那么如果不能重复添加,我们该如何避免呢?暂时没想到好办法,希望有合适方法的指导一下??

 因为团队开发,我们不能避免出现重复添加的问题。

关于跨域问题的研究,加入一个header就可以搞定,这涉及到了http的细节,不属于问题。

 

我又回来了,回到了技术最前线,
相关文章
|
应用服务中间件
./configure *: No such file or directory
今天在CentOS下安装Nginx时,遇到了类似以下的问题: ./configure auto/unix: No such file or directory ./configure auto/options: No such file or directory 之前在另一台服务器上安装的时候也没有遇到此问题, 安装过程参考:CentOS6.5下Nginx1.7.4安装记录 于是网上搜索解决方案,但是搜索了很久也没有找到解决方案, 当我使用“mkdir auto/unix”之后,还是提示类似的错误,但目录名又变了。
3581 0
|
安全 Go 区块链
crypto
【10月更文挑战第29天】crypto
446 1
|
机器学习/深度学习 算法 固态存储
深度学习在图像识别中的应用与发展
本文将探讨深度学习在图像识别领域的应用与发展。通过分析深度学习的基本概念、常用模型以及具体案例,揭示其在图像识别中的重要性和未来趋势。我们将详细介绍卷积神经网络(CNN)的原理与结构,并展示如何利用深度学习进行图像分类、目标检测和图像分割等任务。同时,我们还将讨论当前面临的挑战及可能的解决途径。希望通过这篇文章,读者能够对深度学习在图像识别中的应用有一个全面而深入的了解。
|
监控 安全 网络性能优化
什么是可管理和非可管理交换机?
【8月更文挑战第4天】
398 13
什么是可管理和非可管理交换机?
WK
|
C++ 开发者 iOS开发
C++跨平台框架
C++跨平台框架使开发者能够编写一次代码,在多个操作系统和硬件平台上运行,提高开发效率和软件可扩展性。常见的框架包括Qt、wxWidgets、SDL、JUCE等,它们各自具有丰富的功能和特点,适用于不同的应用场景。选择框架时需考虑目标平台、功能需求、学习曲线和社区支持等因素。
WK
464 0
|
传感器 物联网 区块链
未来已来:探索新兴技术的发展趋势与应用前景
在科技飞速发展的今天,新兴技术如区块链、物联网、虚拟现实等正在逐步改变我们的生活和工作方式。本文将深入探讨这些技术的发展趋势和应用场景,以及它们如何影响我们的未来世界。
208 29
|
前端开发 关系型数据库 MySQL
ThingsGateway:一款基于.NET8开源的跨平台高性能边缘采集网关
ThingsGateway:一款基于.NET8开源的跨平台高性能边缘采集网关
337 2
|
移动开发 监控 API
2023阿里云域名优惠口令大全(注册/续费/转入)亲测有效
阿里云com域名优惠口令续费69元一年,阿里云cn域名续费优惠口令35元一年,域名优惠口令是阿里云官方推出的针对域名产品注册、转入、续费的优惠码。使用域名优惠口令,可享受一定的促销优惠。本文为您介绍域名优惠口令的使用规则、获取途径及使用方法。
15864 0
2023阿里云域名优惠口令大全(注册/续费/转入)亲测有效
|
敏捷开发 前端开发 JavaScript
低代码是什么?国内排名前 5 的低代码开发平台对比
低代码是一套可视化开发工具,它帮开发者把前后端基础功能写扎实,开发者只需要通过填表配置或拖拽生成前端组件的方式,即可完成后台管理系统的快速搭建。由于低代码仍需要写少量 JS 代码,所以低代码开发平台主要面向程序员,帮助程序员敏捷开发。本文使用企业级低代码开发平台「卡拉云」举例说明,什么是低代码开发平台。低代码卡拉云把后台管理系统(CRM、ERP、CMS、MES等),拆分抽象成三部分。「前端组件」+「后端数据」+「连接前后端的简单 JS 代码」
1373 0
低代码是什么?国内排名前 5 的低代码开发平台对比
|
存储 人工智能 边缘计算
阿里云付哲:边缘云技术创新 让“云”无处不在
在8月19日的2022中国数字服务大会【边缘服务专题论坛】上,阿里云边缘云团队博士后研究员兼技术专家付哲以《边缘云技术创新 让“云”无处不在》为主题,分享了阿里云在边缘计算与边缘云方面的技术演进路线、商业场景实践与学术研究探索上的工作。
984 0
阿里云付哲:边缘云技术创新 让“云”无处不在