簡體   English   中英

Mailchimp 如何在 javascript 中調用 mailchimp 3.0 API

[英]Mailchimp how to call mailchimp 3.0 API in javascript

我正在嘗試訂閱 mailchimp 列表的電子郵件,我首先按照文檔進行操作,使用“郵遞員”提出請求,添加了所需的內容,一切正常,所以我嘗試在我的網站上進行操作,但沒有工作

我試圖用我在郵遞員上設置的相同值發出一個簡單的請求,但是每次我嘗試發送請求時,響應都會說

XMLHttpRequest 無法加載https://us12.api.mailchimp.com/3.0/lists/xxxxxx/members 對預檢請求的響應未通過訪問控制檢查:請求的資源上不存在“Access-Control-Allow-Origin”標頭。 因此,不允許訪問 Origin ' https://mywebsite.com '。 響應具有 HTTP 狀態代碼 501。

我試圖找到一種方法來克服這個問題,但這是不可能的

我在 stackoverflow 上搜索每個人都說要使用 jsonp 或在 ajax 調用中添加一些內容或使用 mailchimp ajax 插件,但沒有任何效果

我嘗試過不同的 stackoverflow 帖子,例如Mailchimp 使用 jQuery AJAX 訂閱? 但幾乎所有人都說同樣的話

我試過cache: false dataType:jsonp crossDomain: true xhrFields: {withCredentials: true}

這是我的代碼,我使用的是 Jquery

$.ajax({
          type: "POST",
          url: "https://usxx.api.mailchimp.com/3.0/lists/xxxxxxxx/members",

          data: { "email_address":email@adress.com,  "status":"subscribed"},
          headers: {
            "Authorization": "Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==",
            "Content-Type": "application/json"
          },
          success: function(data){
             alert('Thanks for subscribing');
          },
          error: function(data){
            alert('there was an error, try again later');
          }
});

我也想過創建自己的 api 然后調用 mailchimp api 但我可能會遇到同樣的問題

你有什么建議嗎?

提前致謝

正如 charliefl 所指出的,這是一個 CORS 問題。 MailChimp 不支持 CORS,主要是因為它需要您將 API 憑據傳遞給網頁用戶,從而允許他們接管您的整個帳戶。

MailChimp 的兩個選項是通過服務器代理您的請求,或者,為了讓人們注冊到您的列表,您可以構建一個使用更受限制的 API 的自定義注冊表單 第二種方法的警告是,它強制您通過 MailChimp 的雙重選擇加入過程進行所有訂閱。

暫無
暫無

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

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