2017-01-09 56 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

检查是否正在使用http://techblog.constantcontact.com/software-development/using-cors-for-cross-domain-ajax-requests/。 HTTPS应该在TLS 1.1或更高版本上。我们尝试避免接受客户端对API的ajax请求,因为它不是存储API凭据的安全方式 – Alyss

+0

错误说401,所以它是一个身份验证错误(无效凭据),没有别的。事实上,由于任何人都可以通过查看页面源来获取您的API凭据,因此客户端请求是不安全的;然而,BC API没有对请求源作任何区分,并且肯定会自由地接受客户端ajax请求。 – 2017-01-12 18:23:07

回答

0

您需要base64编码您的username:password凭证。

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