首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Angular7使用Mailchimp API

Angular7使用Mailchimp API
EN

Stack Overflow用户
提问于 2019-09-16 07:32:47
回答 1查看 304关注 0票数 0

我试图发出HTTP POST请求以使用Mailchimp (来自Angular7代码),但我得到了以下响应:

CORS策略阻止了从源'http://localhost:4200‘在'https://us12.api.mailchimp.com/3.0/lists/ddddddd/members’对XMLHttpRequest的访问:对印前检查请求的响应未通过访问控制检查:请求的资源上不存在' Access - control -Allow- origin‘标头。

从REST客户端,我可以在Mailchimp中进行插入,而不会出现这个CROS问题

代码语言:javascript
复制
export class MyService {
  
  constructor(public httpRequestsService: HttpRequestsService) { }

  private async getHttpHeader() {
    const rheaders = new HttpHeaders({
      'Content-Type': 'application/json' , 
      'Access-Control-Allow-Origin': '*',
      'Access-Control-Allow-Methods': 'POST, GET, OPTIONS',
      'Access-Control-Allow-Headers':'X-Requested-With',
      'Authorization': 'apikey ' + MailchimpSettings.API_KEY
    });
    return { headers: rheaders };
  }

  public async AddNewMember(email: string, language = 'en', status = , mergeFields?: any) {
    var url = MailchimpSettings.URL;

    var body = {
      "email_address": email,
      "status": MailchimpSettings.SUBSCRIBED_STATUS,
      "language": language
    };
    
    var httpOptions = await this.getHttpHeader();
    var _body = JSON.stringify(body);

    var result = await this.post(url, _body, httpOptions);
    
  }
  
  public async post(url: string, body: string | {} = {}, requestHeaders?: any): Promise<Response> {
     
     return this.http.post(url, body, requestHeaders).toPromise()
       .then((res: any) => {
         return res;
       })
       .catch((err) => {
         return this.handleErrorPromise(err);
       });
   }
}

任何人谁可以帮助我正确的HTTP头(或任何必要的更改),以准确地再现REST客户端的行为,并能够使一个成功的帖子。

谢谢你的帮忙

EN

回答 1

Stack Overflow用户

发布于 2019-11-25 05:06:03

不幸的是,答案是你不能。Mailchimp不支持CORS,因为这需要传递API凭证,这是不安全的。

您可以选择从另一个服务器发出请求,就像您在REST客户端中提到的那样,或者创建一个自定义注册表单,该表单将使用更多受限的API调用。

或者对mailchimp表单客户端使用jsonp请求。

请参阅this

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57948931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档