Параметр Firebase x-http-method-override игнорируется
HTTP POST запросы с использованием ?x-http-method-override=PATCH
обрабатываются как POST вместо вызовов PATCH в Firebase REST API. Это начало происходить некоторое время в последние две недели.
В документации Firebase все еще упоминается этот параметр, является ли он более неточным или это ошибка в Firebase?
Специальный (Java) код работает в Google Appengine, где PATCH не поддерживается напрямую. (Предшественник App Engine, совместимого с Firebase SDK)
Для справки, запрос выполняется с помощью следующего кода, в ответе указывается успешный запрос без каких-либо ошибок.
HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory(new
HttpRequestInitializer() {
@Override
public void initialize(HttpRequest request) {
request.setParser(new JsonObjectParser(JSON_FACTORY));
}
});
String path = url+".json"+"?x-http-method-override=PATCH";
GenericUrl fullUrl = new GenericUrl(path);
JsonHttpContent content = new JsonHttpContent(JSON_FACTORY, data);
content.setMediaType(new HttpMediaType("application/json; charset=UTF-8"));
HttpRequest request = requestFactory.buildPostRequest(fullUrl,content);
HttpResponse response = request.execute();
1 ответ
пожарный здесь
К сожалению, эта проблема была недавно введена в серверную обработку запросов REST в Firebase. Мы ожидаем, что будет исправлено к 1 июня.
До этого времени вам придется передавать правильный HTTP-глагол или заголовок запроса, чтобы получить поведение PATCH. Извините, у меня пока нет хороших новостей.