我有一个 WordPress 网站,其订单页面上有 woocommerce ajax 请求。该网站有一个暂存域和一个实时域。
$(function(){
var root_url = 'https://'+window.location.hostname;
console.log(root_url);
});
用于暂存的 Ajax 请求示例:
$.ajax({
type: 'GET',
url: https://staging-mywebsite.net/wp-json/wc/v2/products?category=504,
cache: false,
beforeSend: function(jqXHR, settings) {
},
headers: {"Authorization": "Basic " + btoa("ck_123" + ":" + "cs_123") // staging},
success: function(data) {
}
});
实时站点的 Ajax 请求示例:
$.ajax({
type: 'GET',
url: https://livewebsite.com/wp-json/wc/v2/products?category=504,
cache: false,
beforeSend: function(jqXHR, settings) {
},
headers: {"Authorization": "Basic " + btoa("ck_456" + ":" + "cs_456") // staging},
success: function(data) {
}
});
实时网站和登台网站的 headers
属性上有不同用户名和密码。
您知道如何根据域为 headers
属性设置条件或全局变量吗?
感谢任何帮助。谢谢
最佳答案
您是否尝试过使用 document.domain 属性?我在想这样的事情:
var headers = {"Authorization": "Basic " + btoa("ck_456" + ":" + "cs_456")} // Assume live site
if( document.domain === "staging-mywebsite.net" ){
headers = {"Authorization": "Basic " + btoa("ck_123" + ":" + "cs_123")} // Use staging instead
}
然后在 AJAX 请求中使用该变量。
...
headers: headers,
...
关于javascript - 如何根据url设置jquery ajax headers授权?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53059889/