Я пытаюсь запросить PDF-файл с JS fetch, но запрос блокируется с помощью HTTP 405. Я управляю запросом с помощью модуля ISS, который добавляет Access-Control-Allow-Origin ко всем адресам.Как я могу это исправить?
Js скрипт
fetch(link, {
mode: 'cors',
crossdomain: true,
method: 'GET',
headers: {
'Content-Type': "application/pdf",
'Accept': "application/pdf",
'Authorization': "Bearer " + token,
},
}).then(res => {console.log(res);});
Iss Mod
public class PdfCordMod : IHttpModule
{
public PdfCordMod()
{
}
public String ModuleName
{
get { return "PdfCordMod"; }
}
// In the Init function, register for HttpApplication
// events by adding your handlers.
public void Init(HttpApplication application)
{
application.BeginRequest +=
(new EventHandler(this.Application_BeginRequest));
}
private void Application_BeginRequest(Object source,
EventArgs e)
{
// Create HttpApplication and HttpContext objects to access
// request and response properties.
HttpApplication application = (HttpApplication)source;
HttpContext context = application.Context;
string filePath = context.Request.FilePath;
string fileExtension = VirtualPathUtility.GetExtension(filePath);
if (fileExtension.Equals(".pdf") )
{
context.Response.AddHeader("Access-Control-Allow-Origin", "*");
context.Response.AddHeader("Access-Control-Allow-Methods", " GET, POST, PATCH, PUT, DELETE, OPTIONS");
context.Response.AddHeader("Access-Control-Allow-Headers", "Origin, Content-Type, X-Auth-Token");
}
}
public void Dispose() { }
}