[Bug]HttpClient "+"編碼成" "

個人沒有在寫網誌,剛好專案有碰到這個問題,單純紀錄及分享

情境:get request url的query string包含+會被轉碼成空白
ex. 要查詢email時,送出的get request url:

api.com/api/user/data?email=test+1@email.com

會被解析為

https://api.com/api/user/data?email=test 1@email.com

getMemberList(param: any) {
    const url = 'api/user/data';
    return this.http.get(url, { queryObject: param });
  }

我的解決方式為

getMemberList(mail: string, param: any) {
    const url = mail ? `api/user/data?mail=${encodeURIComponent(mail)}` : 'api/user/data';
    return this.http.get(url, { queryObject: param });
  }

目前官方的issue還是open狀態

1個讚