加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何在Angular 2中创建一个简单的JSONP异步请求?

发布时间:2020-12-17 08:05:40 所属栏目:安全 来源:网络整理
导读:我正在尝试将以下角度1代码转换为角度2: $http.jsonp('https://accounts.google.com/logout'); 它需要是一个JSONP请求来跳过CORS策略问题。 在所有这些突破性变化之后,角度2中的JSONP请求可以通过以下方式进行。 在应用模块的定义文件中导入JSONP模块 impo
我正在尝试将以下角度1代码转换为角度2:
$http.jsonp('https://accounts.google.com/logout');

它需要是一个JSONP请求来跳过CORS策略问题。

在所有这些突破性变化之后,角度2中的JSONP请求可以通过以下方式进行。

>在应用模块的定义文件中导入JSONP模块

import {JsonpModule} from '@angular/http';
@NgModule({
declarations: [
    //... List of components that you need.
],imports: [
    JsonpModule,//...
],providers: [
    //...
],bootstrap: [AppComponent]
})

将jsonp服务注入您的服务:

import {Jsonp} from '@angular/http';

@Injectable()
export class MegaSuperService {
   constructor(private _jsonp: Jsonp) {}
}

>使用“JSONP_CALLBACK”作为回调属性进行请求:

// inside your service
this._jsonp.get('/api/get?callback=JSONP_CALLBACK').map(data => {
// Do stuff.
});

>正如titusfx所建议的那样,为了映射函数工作,你需要导入,结果是一个Observable,只有默认定义,除了subscribe。您需要手动导入任何其他运算符,如:

import 'rxjs/add/operator/map';

或更一般

import 'rxjs/add/operator/';

就个人而言,我以前在测试版中有这个导入。但是我现在删除它,在Angular 2.0.2中,代码没有中断。这就是为什么这个步骤最初被省略了。如果地图方法未定义出现错误,那肯定有帮助。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读