簡體   English   中英

如何設置基於URL的jQuery Ajax頭授權?

[英]How to set jquery ajax headers authorization based on url?

我有一個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申請Live網站樣本:

$.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,
...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM