Я занимаюсь разработкой приложения .net core с угловым интерфейсом. Я новичок в этом. Я пытаюсь разместить и получить данные с сервера. С основного сервера .net я подключаюсь к серверу .net Framework для получения и публикации данных. Я сделал следующий запрос Get, чтобы получить данные с сервера и загрузить файл во внешнем интерфейсе. Когда я делаю запрос на подключение к серверу, я получаю эту ошибку. Пожалуйста, проведите меня через эту проблему.
Service.ts
export class DownloadService {
constructor(private http:HttpClient, private api:ApiService) { }
downloadDoc(): Observable<any> {
return this.http.get('http://localhost:5001/api/Drawing/download', {/* headers, */ reportProgress:true, responseType: "blob" });
}
}
app.component.ts
form(){
this.download.downloadDoc()
.pipe(
finalize(() => {
this.disabled = false;
})
)
.subscribe(
res => {
const data = new Blob([res], {type: 'application/zip'});
saveAs(data);
console.log(data);
var url = URL.createObjectURL(data);
window.open(url)
}, error =>{
console.log('error while downloading', error)
})
}
}
Контроллер
namespace ang.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class DrawingController : Controller
{
private IHubContext<DrawingHub> _hubContext;
public DrawingController(IHubContext<DrawingHub> hubContext)
{
_hubContext = hubContext;
}
[HttpGet]
[Route("download")]
public HttpResponseMessage download(intID ,DH dh)
{
var dh1 = dh.Data;
var response = new HttpResponseMessage();
return response;
}
startup.cs
services.AddCors(options => options.AddPolicy("CorsPolicy",
builder =>
{
builder.AllowAnyMethod()
.AllowAnyHeader()
.AllowAnyOrigin()
.AllowCredentials();
}));
app.UseCors("CorsPolicy");
app.UseSignalR(routes =>
{
routes.MapHub<DrawingHub>("/message");
});
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller}/{action=Index}/{id?}");
});