Как отправить параметр «тело» в HttpClient.get()?

У меня есть «api rest», который я создал в PHP, служба возвращает JSON с параметрами «header», «body», «get», «pos», который приходит для получения без какой-либо проверки. Теперь я создал службу в angular для подключения к «api rest», все в порядке, у меня проблема в том, что я хочу отправить параметр как «ТЕЛО», но я не знаю, как это сделать, я исследуя, но я не нашел форму. Можно ли отправить "тело" через HttpClient.get()?

Как отправить параметр «тело» в HttpClient.get()?

import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
import { map } from 'rxjs/operators';
import { Observable } from 'rxjs';

@Injectable({
  providedIn: 'root'
})
export class ServicioService {
  constructor(private http: HttpClient) { }
  getQuery(query: string){
    const url = `http://localhost:8080/servicio/`;

    const headers = new HttpHeaders({
      'Authorization': 'Bearer BQAiaibx-we0RSlZFN29B5TPF4t6egxbuuEsc5ZYZhpamHUhImd5'
    });
    const params = new HttpParams()
    .set('page', '2')
    .append('page', '3')
    .set('sort', 'abc');
    return this.http.get (url, { params, headers});
  }
  getNewReleases(){
    return this.getQuery("")
                .pipe( map((data: any) => {
                  return data;
                }));

  }
}

Как отправить параметр «тело» в HttpClient.get()?

Вам следует использовать запрос POST, а не запрос GET, если вы планируете отправлять данные в REST API.

nullptr.t 10.04.2019 19:55
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
5
1
9 614
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Запрос GET не имеет тело. Вы должны использовать POST или PUT.

Вы можете немного прочитать здесь о методах http. О GET: Метод GET запрашивает представление указанного ресурса. Запросы с использованием GET должны только извлекать данные и не должны иметь никакого другого эффекта.

Таким образом, было бы неправильно отправлять тело, потому что метод GET не должен ничего менять.

наличие тела не подразумевает изменения в бэкенде

JFFIGK 16.10.2020 00:20

как вы можете использовать это тогда? elastic.co/guide/en/elasticsearch/reference/current/…

S.Galarneau 29.01.2021 16:18
So, it would be wrong to send a body because a GET method should not change anything. Вы имеете в виду, какую страницу результатов вы хотите? Или фильтр?
Captain Prinny 04.01.2022 21:46

Другие вопросы по теме