开发者社区> 架构师郭郭> 正文

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的细节,不属于问题。

 

我又回来了,回到了技术最前线,

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
19397 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
24464 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
13736 0
angularjs中 *.min.js.map 404的问题
初次使用AngularJS,在chrom调试的时候,出现如下问题: GET http://localhost:63342/luosuo/visitor/js/lib/angular-animate.min.js.map 404 (Not Found) register.html:1 GET http://localhost:63342/luosuo/visitor/js/lib/angular-route.min.js.map 404 (Not Found) 百度之,原因如下:    问题解决了的感觉真好。
567 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
14430 0
java.lang.OutOfMemoryError: GC overhead limit exceeded 问题分析和解决(转)
在项目历史数据导入过程中,出现了应用无法访问的情况。立刻对Weblogic进行分析,发现Weblogic的内存、线程等性能良好,Server也是Running的状态。随后查看了Weblogic日志,在日志中发现下述错误   通过排查问题后得出造成此类问题的原因是,项目的一个模块在批量导入数据,程序需要New一个很大的对象,GC发现内存不够后,对内存进行回收,但是发现回收后的内存还不能满足大对象的需要。
1270 0
+关注
架构师郭郭
专注消息中间件、专注架构设计
74
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载