Cloud Functions for Firebase Error: getaddrinfo ENOTFOUND
Cloud Functions for Firebase Error: getaddrinfo ENOTFOUND
我有请求函数并尝试为 Firebase 集成 width Cloud Functions。
var http = require("https");
function addUserToMailchimpList(email) {
var options = { method: 'POST',
url: 'https://usxx.api.mailchimp.com/3.0/lists/xxxxxxx/members/',
headers:
{ 'content-type': 'application/json',
'user' : 'anystring:xxxxxxxxxxxxxxxxxxxxxxx'
},
body:
{ email_address: email,
status: 'subscribed',
},
json: true };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
console.log(error);
console.loh(response);
});
}
然后我尝试部署这个函数的宽度
exports.sendWelcomeEmail = functions.auth.user().onCreate(event => {
const user = event.data; // The Firebase user.
const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.
return addUserToMailchimpList(email);
});
但在 firebase 函数日志中出现错误:
Error: Error: getaddrinfo ENOTFOUND usxx.api.mailchimp.com usxx.api.mailchimp.com:443
我做错了什么?不懂..?
我正在尝试使用其他方法但出现同样的错误
function addUserToMailchimpList(email) {
var options = {
"method": "POST",
"hostname": "usxx.api.mailchimp.com",
"port": null,
"path": "/3.0/lists/xxxxx/members/",
"headers": {
"content-type": "application/json",
"user": "anystring:xxxxxxxxxx",
}
};
var req = http.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({ email_address: email,
status: 'subscribed',
merge_fields: { FNAME: 'xxx', LNAME: 'xxx' } }));
req.end();
}
This blogpost 建议在您可以从 Firebase 云函数执行 API 请求之前,您需要先启用计费。
我有请求函数并尝试为 Firebase 集成 width Cloud Functions。
var http = require("https");
function addUserToMailchimpList(email) {
var options = { method: 'POST',
url: 'https://usxx.api.mailchimp.com/3.0/lists/xxxxxxx/members/',
headers:
{ 'content-type': 'application/json',
'user' : 'anystring:xxxxxxxxxxxxxxxxxxxxxxx'
},
body:
{ email_address: email,
status: 'subscribed',
},
json: true };
request(options, function (error, response, body) {
if (error) throw new Error(error);
console.log(body);
console.log(error);
console.loh(response);
});
}
然后我尝试部署这个函数的宽度
exports.sendWelcomeEmail = functions.auth.user().onCreate(event => {
const user = event.data; // The Firebase user.
const email = user.email; // The email of the user.
const displayName = user.displayName; // The display name of the user.
return addUserToMailchimpList(email);
});
但在 firebase 函数日志中出现错误:
Error: Error: getaddrinfo ENOTFOUND usxx.api.mailchimp.com usxx.api.mailchimp.com:443
我做错了什么?不懂..?
我正在尝试使用其他方法但出现同样的错误
function addUserToMailchimpList(email) {
var options = {
"method": "POST",
"hostname": "usxx.api.mailchimp.com",
"port": null,
"path": "/3.0/lists/xxxxx/members/",
"headers": {
"content-type": "application/json",
"user": "anystring:xxxxxxxxxx",
}
};
var req = http.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({ email_address: email,
status: 'subscribed',
merge_fields: { FNAME: 'xxx', LNAME: 'xxx' } }));
req.end();
}
This blogpost 建议在您可以从 Firebase 云函数执行 API 请求之前,您需要先启用计费。