2014-03-03 6 views
0

PhoneGap 3.3 파일 전송 플러그인을 통해 기본 인증으로 보호되는 Windows 서버로 파일을 업로드하려고합니다. 사실 내 애플 리케이션과 서버 (아약스 당) 사이의 정상적인 대화는 완벽하게 모든 아약스 전화와 내 사용자의 자격 증명을 보내 작업입니다.cordova/phonegap 3.3 : fileUploadOptions에서 사용자 자격 증명을 설정하는 방법

var options = new FileUploadOptions(); 
    options.fileKey = "file"; 
    options.fileName = imageURI.substr(imageURI.lastIndexOf('/')+1); 
    options.mimeType = "image/jpeg"; 
    options.chunkedMode = false; 
    options.headers = { 
     'Authorization':authHeaderValue(db.getItem("user"), db.getItem("pass")) 
    }; 

authHeaderValue = function(username, password) { 
    var tok = username + ':' + password; 
    var hash = btoa(tok); 
    return "Basic " + hash; 
}; 

이 내가 (I에 유래 스레드에서 그것을 발견) 지금까지 뭘하려하지만 401 - 권한이없는 ...

Pls는 저를 다시 제공합니다. 네가 나를 도울 수있는 어떤 것을 안다면 나에게 짧은 대답을해라. 여러분 모두에게

안부,

잉마르

+0

만들기 사용 자격 증명 보내기 –

답변

0

글쎄, 나는 비슷하지만 대신에 내가 인증을 위해 JWT를 사용하여 "기본"의 뭔가. 내가 사용하는 코드를 보여 드리겠습니다 :

options.headers = { 'Authorization': 'Bearer ' + app.session.getSess('token') }; 

그리고 유효 기간 동안 토큰을 저장하기 위해 저는 SessionStorage를 사용합니다. 당신에 대한 JSON Web Token

또 다른 일을 알고 싶다면, 같은 내 경우 뭔가에, 서버에서 헤더를 변경해야합니다 : 정확한 구문 노 얻기 위해 아약스 요청을 가로 챌 피들러의

('Access-Control-Allow-Origin','*'); 
('Access-Control-Allow-Methods','GET,PUT,POST,DELETE,OPTIONS'); 
('Access-Control-Allow-Headers','Content-Type, Authorization, Content-Length, X-Requested-With'); 
관련 문제