Я хочу интегрировать свой веб-сайт с офисом в сети, используя протокол WOPI. Я использую веб-API asp. net core (3.0) для реализации сервера WOPI. Согласно документации протокола: https://wopi.readthedocs.io/projects/wopirest/en/latest/files/Unlock.html::
Заголовки ответа X-WOPI-Lock - Строковое значение, идентифицирующее текущую блокировку файла. Этот заголовок всегда должен быть включен при ответе на запрос с конфликтом 409.
Когда файл не заблокирован, и я получил запрос на его разблокировку, мне нужно ответить "409 Конфликт "с заголовком, который содержит пустое значение: X-WOPI-Lock:" "
Я пытался использовать:
[ApiController]
public class filesController : ControllerBase
{
[HttpPost]
[Route("wopi/files/{id}")]
public IActionResult Post(Guid id)
{
var result = new StatusCodeResult((int)HttpStatusCode.Conflict);
HttpContext.Response.Headers.Add("X-WOPI-Lock", string.Empty);
return result;
} }
и посмотреть как asp. net ядро игнорирует пустой заголовок, потому что он отсутствует на клиенте, я вижу это с помощью инструмента проверки Microsoft для WOPI
Если я добавлю несколько проверить значение заголовка, оно появилось в ответе:
HttpContext.Response.Headers.Add ("X-WOPI-Lock", "Some value");
В инструменте проверки я вижу ошибку:
Похоже, мне нужно создать http-ответ, содержащий заголовок с пустым значением: X-WOPI -Замок: "" .
Как я могу это сделать?