我正在为作业创建网站,我想在其中动态加载一些数据。问题是,数据仅来自网站,没有API或其他任何东西。有什么方法可以使用angular。中的http.get将整个网站提取为原始HTML,然后可以对其进行解析以获取信息?
谢谢
答案 0 :(得分:1)
您可以将responseType
设置为"text"
以将响应作为字符串获取。
this.httpClient.get(url, {responseType: "text"})
请参阅重载方法3:
https://angular.io/api/common/http/HttpClient#get
注意:跨域的GET请求必须遵守CORS
答案 1 :(得分:0)
service.ts
getRawData(): Observable<any> {
const api = 'https://www.w3.org/TR/PNG/iso_8859-1.txt';
return this.httpClient.get(api,{ responseType: 'text' });
}
component.ts
import { Component, OnInit } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { AppService } from './app.service';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent implements OnInit {
name = 'Angular 5';
rawlist: any;
constructor(private appService: AppService) {}
ngOnInit() {}
getRawData() {
this.appService
.getRawData()
.subscribe(
data => this.rawlist=data,
error => console.log(error)
);
}
}
.html
<button (click)="getRawData()">get raw data </button>
{{rawlist }}