我尝试获取Mangaeden API的信息,并且成功获得了响应,但是当我从url渲染图像时。我收到了错误403。似乎在API中进行请求时遇到了问题。
这是应用程序中的错误。
获取 https://cdn.mangaeden.com/mangasimg/63/63df51e43ebfb8983eb39744496b27ef6173b2237535b9c2408ea32d.jpg 403
但是当我尝试在浏览器中加载该URL并下次在我的应用程序中尝试该URL时,它可以工作,因为我认为它将在浏览器中缓存该图像。
这是Mangaeden API信息
您可以通过以下方式获取所有漫画信息,章节和mymanga mangaeden的API。所有信息均以JSON格式发送。您 可以使用HTTP或HTTPS(建议使用mymanga的 API)。重要提示:我们要求每个API用户都有指向我们网站的链接 在他们的应用程序/站点中。新功能:我们现在也支持CORS
关于此。我在哪里可以添加他们的链接
我们要求每个API用户在其网站上都具有指向我们网站的链接 应用程序/站点。
HTML
<img src="{{url}}">
组件代码
@Component({
selector: 'app-list',
templateUrl: './list.component.html',
})
export class ListComponent implements OnInit {
url: String;
constructor(private mangaedenService: MangaedenService) {}
isRedered(id) {
this.url = null;
this.mangaedenService.getInfo(id)
.subscribe(data => {
this.url = 'https://cdn.mangaeden.com/mangasimg/' + data.image;
});
}
}
服务代码
import { Injectable } from '@angular/core';
import 'rxjs/add/operator/map';
import { HttpClient } from '@angular/common/http';
@Injectable({
providedIn: 'root'
})
export class MangaedenService {
constructor(private http: HttpClient) {}
getInfo(id) {
return this.http.get('https://www.mangaeden.com/api/manga/' + id)
.map(this.extract);
}
private extract(res: Response | any) {
return res || {};
}
}
答案 0 :(得分:1)
实际上,我的代码没有问题。在html中渲染图像时出现错误,得到403响应。我在html代码中添加了它,并且可以正常工作。
<meta name="referrer" content="no-referrer"/>
您也可以查看此