Merge pull request #1909 from Wevah/post-body-fix

URL-encode POST body values
This commit is contained in:
Maurice Parker 2020-03-14 12:14:17 -05:00 committed by GitHub
commit b6e25f2d4f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 2 deletions

View File

@ -36,8 +36,12 @@ public extension URLRequest {
case .readerBasic: case .readerBasic:
setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type") setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
httpMethod = "POST" httpMethod = "POST"
let postData = "Email=\(credentials.username)&Passwd=\(credentials.secret)" var postData = URLComponents()
httpBody = postData.data(using: String.Encoding.utf8) postData.queryItems = [
URLQueryItem(name: "Email", value: credentials.username),
URLQueryItem(name: "Passwd", value: credentials.secret)
]
httpBody = postData.percentEncodedQuery?.data(using: .utf8)
case .readerAPIKey: case .readerAPIKey:
let auth = "GoogleLogin auth=\(credentials.secret)" let auth = "GoogleLogin auth=\(credentials.secret)"
setValue(auth, forHTTPHeaderField: HTTPRequestHeader.authorization) setValue(auth, forHTTPHeaderField: HTTPRequestHeader.authorization)