当前位置: 首页 > 面试题库 >

jQuery Ajax POST无法与MailChimp一起使用

华凌
2023-03-14
问题内容

我使用以下代码将数据发送到MailChimp新闻列表(API v3)。每次我type: POST函数中删除时,它都会尝试通过GET发布数据,并正确发送数据(在MailChimp
API仪表板中可以确定响应)。在浏览器(FF)中进行测试时,我得到一个响应为“ true”的.part文件。

   $(function(){
     $("a#test").click(function(e){
       e.preventDefault()  
       data = {
         "apikey" : "667378947", 
         "id" : "90298590285", 
         "email_address" : "test@getmoxied.net", 
         "output" : "json"
       }

  $.ajax({ 
    type: "POST",
    url: 'http://us2.api.mailchimp.com/1.3/?method=listSubscribe',
    data: data,
    success: function(data){
      alert(data);
    },
    error: function(){
      alert("err");
    }
  })       
 });
});

我将我的头发拔了出来,任何见识都将受到赞赏。

提前致谢,

JN


问题答案:

主要问题是jc在您的原始帖子中评论了什么-由于Same Origin
Policy问题,这根本行不通。Firebug对于GET调用失败的原因并不那么明确,但这就是为什么它不返回任何数据的原因。如果通过POST观看,您将看到Firefox甚至没有拨打电话。另一方面,Chrome浏览器的js控制台直接向您说明了同源起源政策。

总而言之,这是一件非常好的事情,如果没有其他原因,这会阻止您公开发布帐户的API密钥,这是一件非常糟糕的事情。如果没有立即发现问题的原因,请仔细阅读API中提供的大量方法,然后意识到访问它们所需要的就是该API密钥。

正确的方法是将数据POST回服务器,然后从那里发出请求。有几个完全建立PHP的例子(使用一个jQuery的,甚至),在这里。



 类似资料:
  • 问题内容: 我的程序应该等待按下向左或向右箭头键,然后更改一个值,以便下次更新PaintComponent时,屏幕看起来有所不同。但是,运行该程序时,屏幕没有变化。 以下是变量声明: 这是主要的KeyListener声明: 这是用于绘画的方法: 当我运行该程序时,该程序会打印外壳,但是当我按箭头键时,屏幕上没有任何变化。 问题答案: 您需要先将关键侦听器添加到组件,然后才能调用它: 您还需要使组件

  • 问题内容: click事件可以正常运行,但是onmouseover事件不起作用。 问题答案: 您需要大写一些字母。

  • 问题内容: 我需要为我的应用程序读/写锁。我已阅读 https://en.wikipedia.org/wiki/Readers%E2%80%93writer_lock 并写了我自己的类,因为在swift中没有读/写锁 效果很好,直到我尝试从GCD线程使用它。 当我尝试在某个时刻从不同的异步块使用此类时,它允许在写入被锁定时进行写入 这是示例日志: 因此,您可以看到g被锁定,但是objc_sync_

  • 问题内容: 我在用Java做一个小Gui。我正在使用setBounds方法在JFrame上设置按钮等的位置,但是问题是,当我将JPanel按钮与JFrame一起使用时,在JFrame上不可见,并且如果没有JPanel也可以,请同时阅读代码,并请帮帮我我是初学者,正面临这些愚蠢的问题。 这个很好 当我将按钮添加到Jpanel时,相同的代码不起作用,所以怎么了,请指导我 请帮我解决这个小问题 问题答案

  • 我目前正在将IntelliJ IDE用于复杂的GWT项目。我想在GWT的开发模式中利用JRebel,所以最近我为IntelliJ安装了JRebel插件,但在使其工作时遇到了麻烦。 基本上IntelliJ不具备在更改时自动编译应用程序的能力,所以每当您对代码进行更改时,我都必须进行编译- 信息:使用JavaC1.7.0_21编译java源代码信息:15个错误信息:0个警告信息:编译完成,9分钟5秒内

  • 问题内容: http://jsfiddle.net/YcK5X/ 我想知道为什么这个AJAX请求没有返回任何内容。 问题答案: 您想要echo:ed的数据必须在名为html的POST参数中提供: