mirror of
https://github.com/apache/cordova-android.git
synced 2025-01-19 23:42:53 +08:00
CB-1151: FileTransfer.download decodes the URL, resulting in a 404 error
This commit is contained in:
parent
a219feaa60
commit
2dc0727e36
@ -75,7 +75,7 @@ public class FileTransfer extends Plugin {
|
|||||||
String source = null;
|
String source = null;
|
||||||
String target = null;
|
String target = null;
|
||||||
try {
|
try {
|
||||||
source = URLDecoder.decode(args.getString(0));
|
source = args.getString(0);
|
||||||
target = args.getString(1);
|
target = args.getString(1);
|
||||||
} catch (JSONException e) {
|
} catch (JSONException e) {
|
||||||
Log.d(LOG_TAG, "Missing source or target");
|
Log.d(LOG_TAG, "Missing source or target");
|
||||||
@ -83,7 +83,7 @@ public class FileTransfer extends Plugin {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (action.equals("upload")) {
|
if (action.equals("upload")) {
|
||||||
return upload(source, target, args);
|
return upload(URLDecoder.decode(source), target, args);
|
||||||
} else if (action.equals("download")) {
|
} else if (action.equals("download")) {
|
||||||
return download(source, target);
|
return download(source, target);
|
||||||
} else {
|
} else {
|
||||||
@ -117,7 +117,7 @@ public class FileTransfer extends Plugin {
|
|||||||
boolean trustEveryone = args.optBoolean(6);
|
boolean trustEveryone = args.optBoolean(6);
|
||||||
boolean chunkedMode = args.optBoolean(7) || args.isNull(7); //Always use chunked mode unless set to false as per API
|
boolean chunkedMode = args.optBoolean(7) || args.isNull(7); //Always use chunked mode unless set to false as per API
|
||||||
JSONObject headers = args.optJSONObject(8);
|
JSONObject headers = args.optJSONObject(8);
|
||||||
// Look for headers on the params map for backwards compatibility with older Cordova versions.
|
// Look for headers on the params map for backwards compatibility with older Cordova versions.
|
||||||
if (headers == null && params != null) {
|
if (headers == null && params != null) {
|
||||||
headers = params.optJSONObject("headers");
|
headers = params.optJSONObject("headers");
|
||||||
}
|
}
|
||||||
@ -184,7 +184,7 @@ public class FileTransfer extends Plugin {
|
|||||||
conn.setRequestMethod("POST");
|
conn.setRequestMethod("POST");
|
||||||
conn.setRequestProperty("Connection", "Keep-Alive");
|
conn.setRequestProperty("Connection", "Keep-Alive");
|
||||||
conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + BOUNDARY);
|
conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + BOUNDARY);
|
||||||
|
|
||||||
// Set the cookies on the response
|
// Set the cookies on the response
|
||||||
String cookie = CookieManager.getInstance().getCookie(target);
|
String cookie = CookieManager.getInstance().getCookie(target);
|
||||||
if (cookie != null) {
|
if (cookie != null) {
|
||||||
|
Loading…
Reference in New Issue
Block a user