기본 인증 (HTTPS over HTTPS)을 사용하여 동일한 출처 (localhost)의 WooCommerce API를 jQuery와 함께 호출하려고합니다. 서버는 Windows의 경우 XAMPP입니다. 자기 서명 인증서 (CN = localhost)를 사용하고 있습니다. 인증서는 웹 사이트의 나머지 부분을 방문 할 때 경고를 표시하지 않습니다. 신뢰할 수있는 루트 인증 기관으로 인증서를 추가하려고했습니다. 심지어 chrome : // flags/# allow-insecure-localhost (인증서가 유효하더라도)를 허용했습니다. "401 Unauthorized"가 계속 나타납니다.jQuery, HTTPS 및 WooCommerce API : 오류 401
var username = "ck_????????????????????????????????????????";
var password = "cs_????????????????????????????????????????";
var up = username + ":" + password;
var authHeader = "Basic " + btoa(username + ":" + password);
WooClient.prototype.getProducts = function() {
return $.ajax({
url: "/myshop/wp-json/wc/v1/products",
type: "get",
dataType: "json",
xhrFields: {
withCredentials: true
},
beforeSend: function (xhr) {
xhr.setRequestHeader("Authorization", authHeader);
return true;
}
}).then(function (data) {
return data;
});
};
고급 휴식 클라이언트에서 수행 한 동일한 요청은 "200 OK"와 본문의 원하는 결과를 반환합니다.
다음 기회를 위해 이것을 사용하는 경우 브라우저에 API 키를 노출하는 것은 매우 나쁜 생각 물론
은 그냥 가장자리에 모든 것이 괜찮 것으로 나타났습니다. – damix911