Да, конечно, это хороший подход, так как http - это асинхронный вызов, поэтому в этом случае лучше вызывать любой функционал / код в блоке успеха http.
Но постарайтесь взломать свой код как можно больше.Как и в вашем случае использования, вы можете вызывать другую функцию и вызывать запрос там внутри, как это -
update(){
this.http.post<any>("/ssservice", "products=" + body, options)
.suscribe(
complete: () => {
this.anotherGetReuqest();
});
}
anotherGetReuqest() {
this.http.get<Product[]>("/ssservice")
.subscribe({(data: Product[]) => products.push(...data),
err => console.log(err)})
}