Skip to content

Commit 729b659

Browse files
fix: Resolve email encoding for the payload (#457)
* fix: Resolve email encoding for the payload * refactor: use Axios object syntax with URL-encoded data for password reset API
1 parent c49da34 commit 729b659

File tree

2 files changed

+19
-4
lines changed

2 files changed

+19
-4
lines changed

src/users/data/api.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -542,7 +542,15 @@ export async function postTogglePasswordStatus(user, comment) {
542542

543543
export async function postResetPassword(email) {
544544
try {
545-
const { data } = await getAuthenticatedHttpClient().post(AppUrls.getResetPasswordUrl(), `email_from_support_tools=${email}`);
545+
const { data } = await getAuthenticatedHttpClient().post(
546+
AppUrls.getResetPasswordUrl(),
547+
{ email_from_support_tools: email },
548+
{
549+
headers: {
550+
'Content-Type': 'application/x-www-form-urlencoded',
551+
},
552+
},
553+
);
546554
return data;
547555
} catch (error) {
548556
return {

src/users/data/api.test.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -551,10 +551,17 @@ describe('API', () => {
551551
describe('Reset Password', () => {
552552
const resetPasswordApiUrl = `${getConfig().LMS_BASE_URL}/account/password`;
553553

554-
it('Reset Password Response', async () => {
554+
test.each([
555+
'email@example.com',
556+
'email.name+test@example.com',
557+
'email_name-test@example.com',
558+
])('Reset Password Response for %s', async (email) => {
555559
const expectedResponse = {};
556-
mockAdapter.onPost(resetPasswordApiUrl, `email_from_support_tools=${testEmail}`).reply(200, expectedResponse);
557-
const response = await api.postResetPassword(testEmail);
560+
mockAdapter.onPost(
561+
resetPasswordApiUrl,
562+
`email_from_support_tools=${encodeURIComponent(email)}`,
563+
).reply(200, expectedResponse);
564+
const response = await api.postResetPassword(email);
558565
expect(response).toEqual(expectedResponse);
559566
});
560567
});

0 commit comments

Comments
 (0)