Из последнего опубликованного вами снимка экрана, который показывает HTTP-запрос, отправляемый через Chrome, ясно, что в вашем вызове WithHeaders
отсутствует заголовок. Если вы посмотрите на Access-Control-Request-Headers
в запросе, вы увидите, что он содержит четыре заголовка:
- apiss
- клиент-идентификатор
- zump-апи-версия
- тип содержимого
Однако ваш WithHeaders
звонок не включает Content-Type
, поэтому вам нужно добавить следующее:
builder.WithHeaders("client-id", "zump-api-version", "apiss", "content-type")
...
Примечание: все это без учета регистра, так что вы можете указать его любым удобным для вас способом.
Более подробная информация об этом содержится в документах MDN: Access-Control-Allow-Headers , которая включает следующее объяснение:
Обратите внимание, что всегда допускаются определенные заголовки: Accept, Accept-Language, Content-Language, Content-Type (но только с MIME-типом его проанализированного значения (игнорируя параметры) либо application / x-www-form-urlencoded , multipart / form-data или text / plain). Они называются простыми заголовками, и вам не нужно указывать их явно.
Это объясняет, почему вам не нужно указывать Accept
(это «простой заголовок»). Вы do должны указать Content-Type
в вашем примере, потому что это не один из трех типов MIME, на которые есть ссылка в приведенном выше утверждении.