From: Chocobozzz Date: Mon, 26 Mar 2018 09:49:44 +0000 (+0200) Subject: Fix log in with special password character (+) X-Git-Tag: v1.0.0-beta.2~32 X-Git-Url: https://git.immae.eu/?a=commitdiff_plain;h=bf9ae5ce57c9e2117548ab5794c0c2a5096ba4ad;p=github%2FChocobozzz%2FPeerTube.git Fix log in with special password character (+) --- diff --git a/client/src/app/core/auth/auth.service.ts b/client/src/app/core/auth/auth.service.ts index 8700e8c74..f5ca2fcdc 100644 --- a/client/src/app/core/auth/auth.service.ts +++ b/client/src/app/core/auth/auth.service.ts @@ -112,17 +112,17 @@ export class AuthService { login (username: string, password: string) { // Form url encoded - const body = new HttpParams().set('client_id', this.clientId) - .set('client_secret', this.clientSecret) - .set('response_type', 'code') - .set('grant_type', 'password') - .set('scope', 'upload') - .set('username', username) - .set('password', password) + const body = new URLSearchParams() + body.set('client_id', this.clientId) + body.set('client_secret', this.clientSecret) + body.set('response_type', 'code') + body.set('grant_type', 'password') + body.set('scope', 'upload') + body.set('username', username) + body.set('password', password) const headers = new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded') - - return this.http.post(AuthService.BASE_TOKEN_URL, body, { headers }) + return this.http.post(AuthService.BASE_TOKEN_URL, body.toString(), { headers }) .map(res => Object.assign(res, { username })) .flatMap(res => this.mergeUserInformation(res)) .map(res => this.handleLogin(res)) diff --git a/server.ts b/server.ts index c19ec4f19..56a4a0c44 100644 --- a/server.ts +++ b/server.ts @@ -88,11 +88,11 @@ app.use(morgan('combined', { stream: { write: logger.info.bind(logger) } })) // For body requests +app.use(bodyParser.urlencoded({ extended: false })) app.use(bodyParser.json({ type: [ 'application/json', 'application/*+json' ], limit: '500kb' })) -app.use(bodyParser.urlencoded({ extended: false })) // ----------- Tracker -----------