aboutsummaryrefslogtreecommitdiff
path: root/FrontEnd/src/app/http
diff options
context:
space:
mode:
Diffstat (limited to 'FrontEnd/src/app/http')
-rw-r--r--FrontEnd/src/app/http/common.ts4
-rw-r--r--FrontEnd/src/app/http/user.ts8
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> {