FileTransfer メソッドを使用して、PhoneGap からサーバーにファイルをアップロードしようとしています。このアップロードで HTTP 基本認証を有効にする必要があります。
関連するコードは次のとおりです。
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);
PhoneGap ソース コードを見ると、上記で行ったように、「params」リストに「headers」を含めることで認証ヘッダーを指定できるようです。
JSONObject headers = params.getJSONObject("headers");
for (Iterator iter = headers.keys(); iter.hasNext();)
{
String headerKey = iter.next().toString();
conn.setRequestProperty(headerKey, headers.getString(headerKey));
}
ただし、これは実際にはヘッダーを追加していないようです。
だから:iPhoneとAndroidの両方で、PhoneGapのFileTransferでHTTP基本認証を行う方法はありますか?