Ich versuche, eine Datei von PhoneGap auf einen Server mit der FileTransfer method hochladen. Ich benötige HTTP Basic Auth für diesen Upload aktiviert werden.PhoneGap FileTransfer mit HTTP-Basisauthentifizierung
Hier ist der entsprechende Code:
var options = new FileUploadOptions({
fileKey: "file",
params: {
id: my_id,
headers: { 'Authorization': _make_authstr() }
}
});
var ft = new FileTransfer();
ft.upload(image, 'http://locahost:8000/api/upload', success, error, options);
Looking over the PhoneGap source code es scheint, dass ich, indem "Header" der Autorisierungsheader in der "params" -Liste angeben kann, wie ich oben gemacht habe:
JSONObject headers = params.getJSONObject("headers");
for (Iterator iter = headers.keys(); iter.hasNext();)
{
String headerKey = iter.next().toString();
conn.setRequestProperty(headerKey, headers.getString(headerKey));
}
Dies scheint jedoch nicht wirklich den Header hinzuzufügen.
Also: gibt es eine Möglichkeit, HTTP Basic Auth mit PhoneGap FileTransfer zu tun, für iPhone und Android?
Für alle fragen, ist diese Methode oben aufgeführten funktioniert für mich. Sie müssen nur hinzufügen: 'params.headers = {Berechtigung: 'Basic' + Kredits}; options.params = params; ' – gabaum10
headers müssen zu options.headers gehen, die nicht zu options.params .____ hinzugefügt wurden – Adam