感谢你的帮助,我确信这是一个真正的基本头脑。我正在设置一个简单的Web前端,以便我可以检查电子邮件地址是否已经是现有MailChimp列表的订阅者。现在我想使用基本的HTML&的JavaScript。
我的MailChimp API密钥检出,我可以运行只需要字符串数据的查询,但相关的API调用需要一个电子邮件地址的结构,并且我在以下代码的任何变体中都会收到错误。我已经安装了node.js,只是从命令行运行它,查询确实可以使用相同的数据,所以我确定我只是这个关闭,但需要你帮助克服困难。
以下是脚本和表单的相关摘要。如上所述,我在回复中收到以下错误消息:验证错误:{\“email \”:\“请输入struct \ / associative array \”}“}
<script type="text/javascript">
function collectAndSubmit() {
var emailAddy = document.getElementById("emailAddy").value;
var JSONemail = {"email":
{
"email": emailAddy
}
};
document.getElementById("email").value = JSONemail;
document.getElementById("apikey").value ="M*Y*A*P*I*K*E*Y"
document.testform.submit();
}
</script>
</head>
<body>
<form action="https://us2.api.mailchimp.com/2.0/helper/lists-for-email" method="post" name="testform">
Email Address: <input type="text" id="emailAddy" name="emailAddy" />
<input type="hidden" id="apikey" name="apikey" />
<input type="hidden" id="email" name="email" />
<br>
<input type="button" value="Check Email" onclick="collectAndSubmit()" />
</form>
</body>
</html>
提前感谢您的帮助。
答案 0 :(得分:5)
您的表单不正确。你可以看看他们的documentation。你必须设置他们称之为email struct
的实际上是一个数组。您的电子邮件输入属性应如<input type="text" id="email" name="email[email]">
。
注意email[email]
它会使数据看起来像"email": {"email": "input value"}
此外,如果您的api密钥应该是秘密,那么将其隐藏在html表单中并不是一个好主意。