diff options
Diffstat (limited to 'FrontEnd/src/app/http')
-rw-r--r-- | FrontEnd/src/app/http/common.ts | 4 | ||||
-rw-r--r-- | FrontEnd/src/app/http/user.ts | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/FrontEnd/src/app/http/common.ts b/FrontEnd/src/app/http/common.ts index 95d29fb6..0f46280c 100644 --- a/FrontEnd/src/app/http/common.ts +++ b/FrontEnd/src/app/http/common.ts @@ -179,3 +179,7 @@ export function convertToBlobWithEtag(res: AxiosResponse<Blob>): BlobWithEtag { etag: (res.headers as Record<"etag", string>)["etag"], }; } + +export function extractEtag(res: AxiosResponse): string { + return (res.headers as Record<"etag", string>)["etag"]; +} diff --git a/FrontEnd/src/app/http/user.ts b/FrontEnd/src/app/http/user.ts index 8345880e..19accc42 100644 --- a/FrontEnd/src/app/http/user.ts +++ b/FrontEnd/src/app/http/user.ts @@ -11,6 +11,7 @@ import { BlobWithEtag, convertToBlobWithEtag, convertToNotModified, + extractEtag, } from "./common"; export const kUserManagement = "UserManagement"; @@ -70,7 +71,8 @@ export interface IHttpUserClient { username: string, etag: string ): Promise<BlobWithEtag | NotModified>; - putAvatar(username: string, data: Blob): Promise<void>; + // return etag + putAvatar(username: string, data: Blob): Promise<string>; changePassword(req: HttpChangePasswordRequest): Promise<void>; putUserPermission( username: string, @@ -137,7 +139,7 @@ export class HttpUserClient implements IHttpUserClient { .catch(convertToNetworkError); } - putAvatar(username: string, data: Blob): Promise<void> { + putAvatar(username: string, data: Blob): Promise<string> { return axios .put(`${apiBaseUrl}/users/${username}/avatar`, data, { headers: { @@ -145,7 +147,7 @@ export class HttpUserClient implements IHttpUserClient { }, }) .catch(convertToNetworkError) - .then(); + .then(extractEtag); } changePassword(req: HttpChangePasswordRequest): Promise<void> { |