Пакетный запрос должен иметь заголовок «Content-Type» / «multipart / mixed» в качестве типа носителя - PullRequest
0 голосов
/ 19 февраля 2019

Возникла ошибка после добавления DefaultODataBatchHandler в OData v4 моего WEB API.

DefaultODataBatchHandler defaultODataBatchHandler = new DefaultODataBatchHandler(GlobalConfiguration.DefaultServer); 

В браузере возникла эта ошибка: Пакетный запрос должен иметь "Content-Type"header. В POSTMan я получил эту ошибку: Пакетный запрос должен иметь тип multipart / mixed в качестве типа носителя.

Если я не поместил код выше,Я получил эту ошибку при доступе к $ batch

"Message": "No HTTP resource was found that matches the request URI 'http://localhost:2288/$batch'.",
"MessageDetail": "No route providing a controller name was found to match request URI 'http://localhost:2288/$batch'"

RouteConfig.cs

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );
    }
}

1 Ответ

0 голосов
/ 19 февраля 2019

Понял сейчас.

Мне просто нужно добавить CORS

        var cors = new EnableCorsAttribute(
            "*",
            "*",
            "*",
            "*"
        );

        config.EnableCors(cors);

и поставить шаблон для открытого заголовка.

...