我正在尝试向维基百科 API 发送获取请求。我从一个有角度的前端发送请求,所以我试图使用 Heroku CORS Anywhere 端点来避免 CORS 问题。出于某种原因,我仍然收到 503 响应,说请求的资源上不存在访问控制允许来源标头。知道为什么会发生这种情况/我还能尝试什么吗?
我的代码:
import { Injectable } from '@angular/core';
import { Http, Response, } from '@angular/http';
import { Observable } from 'rxjs/Rx';
@Injectable()
export class RestService {
API_URL: string = 'https://cors-anywhere.herokuapp.com/https://en.wikipedia.org/wiki/';
constructor(private http: Http) { }
public getRandomArticle() : Observable<any> {
return this.http.get(`${this.API_URL}Special:Random`)
.map((res: Response) => res.json())
.catch((err: any) => Observable.throw(err || 'server error'));
}
}
原文由 user2094257 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以在 2-3 分钟内将 CORS Anywhere 服务器部署到 Heroku,使用 5 个命令:
运行这些命令后,您将在
https://cryptic-headland-94862.herokuapp.com/
运行自己的 CORS Anywhere 代理。因此,与其在请求 URL 前加上https://cors-anywhere.herokuapp.com
前缀,不如在其前加上代理的 URL。