2017-01-09 9 views
0

Zapier을 통해 javascript를 사용하여 인증하려하지만 인증 할 수 없습니다. 나는 다음과 같은 코드를 사용하고 있습니다 :zapier 및 javascript를 사용하여 bigcommerce 인증

var auth = 'Basic **************'; 
var url = 'https://www.*****.com/api/v2/customers?email=mel****.com'; 


$.ajax({ 
    url : url, 
    method : 'GET', 
    dataType: "json", 
    contentType: "application/json; charset=utf-8", 
    async: false, 
    crossDomain: true, 
    beforeSend : function(req) { 
     req.setRequestHeader('Authorization', auth); 
    }, 
    success: function(result) { 
     alert('done'); 
     console.log(result); 
    }, 
    error: function (request, textStatus, errorThrown) { 
     console.log(request.responseText); 
     console.log(textStatus); 
     console.log(errorThrown); 
    } 
}); 

그러나 나는 401 unauthenticated user 오류가 발생 유지한다. https 사이트에서 실행 해 보았지만 작동시키지 못했습니다. 모든 포인터 크게 감사하겠습니다.

+0

확인합니다. HTTPS는 TLS 1.1 이상이어야합니다. 우리는 API 자격 증명을 저장하는 안전한 방법이 아니므로 API에 클라이언트 측 Ajax 요청을 허용하지 않습니다. – Alyss

+0

오류는 401이므로 인증 오류 (잘못된 자격 증명)이며 다른 것은 없습니다. 실제로 클라이언트 측 요청을하는 것은 누구나 페이지 원본을보고 API 자격 증명을 얻을 수 있으므로 안전하지 않습니다. 그러나 BC API는 요청 소스를 구별하지 않으며 클라이언트 측 Ajax 요청을 자유롭게 수락합니다. –

답변

0

username:password 자격을 base64로 인코딩해야합니다. 당신이 http://techblog.constantcontact.com/software-development/using-cors-for-cross-domain-ajax-requests/ 사용하는

var auth = 'Basic ' +window.btoa('username:password');