如何获取 angular 中 PATCH 方法的状态码?

How to get status code for PATCH method in angular?

我正在使用 PATCH 方法进行网络服务 API 调用。如果补丁成功,那么它将 return 一个 204 状态代码。在状态代码的帮助下,我在我的组件中编写了逻辑。但是当我执行 console.log 时,HTTPResponse 变为空。在这种情况下如何获取状态码来编写我的逻辑?

public invokePatchRequest(): void {
        this.myService
        .invokePatchRequest('John')
        .pipe(takeUntil(this.unsubscribe$))
        .subscribe(
            (response: HttpResponse<any>) => {
                if (response.status === 204 ) {
                    console.log('Display Success Message');
                } 
            },
            (error: HttpErrorResponse) => {
                // Handle Error
            }
        );
    }

在上面的代码中,响应为空。所以我无法比较状态代码。请指教

默认情况下,HttpClient 的 patch 方法观察响应的主体。要获得完整的响应(包括状态),您可以在调用方法时将 observe: 'response' 添加到选项对象。

例如:

const url = 'http://anything.com';
const body = {};

this.http.patch<ResponseBodyType>(url, body, {observe: 'response'}); // will return Observable<HttpResponse<ResponseBodyType>>